|
5 | 5 | ! Other parameters used by JSON-Fortran.
|
6 | 6 | ! This is a low-level module not meant to be used by a JSON-Fortran user.
|
7 | 7 | !
|
8 |
| -!## License |
| 8 | +!### License |
9 | 9 | ! * JSON-Fortran is released under a BSD-style license.
|
10 | 10 | ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE)
|
11 | 11 | ! file for details.
|
@@ -38,29 +38,29 @@ module json_parameters
|
38 | 38 | integer(IK),parameter :: json_string = 7 !! String JSON data type
|
39 | 39 |
|
40 | 40 | !special JSON characters
|
41 |
| - character(kind=CK,len=*),parameter :: space = CK_' ' |
42 |
| - character(kind=CK,len=*),parameter :: start_object = CK_'{' |
43 |
| - character(kind=CK,len=*),parameter :: end_object = CK_'}' |
44 |
| - character(kind=CK,len=*),parameter :: start_array = CK_'[' |
45 |
| - character(kind=CK,len=*),parameter :: end_array = CK_']' |
46 |
| - character(kind=CK,len=*),parameter :: delimiter = CK_',' |
47 |
| - character(kind=CK,len=*),parameter :: colon_char = CK_':' |
48 |
| - character(kind=CK,len=*),parameter :: start_array_alt = CK_'(' !! for [[json_get_by_path]] |
49 |
| - character(kind=CK,len=*),parameter :: end_array_alt = CK_')' !! for [[json_get_by_path]] |
50 |
| - character(kind=CK,len=*),parameter :: root = CK_'$' !! for [[json_get_by_path]] |
51 |
| - character(kind=CK,len=*),parameter :: this = CK_'@' !! for [[json_get_by_path]] |
52 |
| - character(kind=CK,len=*),parameter :: dot = CK_'.' !! for [[json_get_by_path]] |
| 41 | + character(kind=CK,len=*),parameter :: space = CK_' ' !! space character |
| 42 | + character(kind=CK,len=*),parameter :: start_object = CK_'{' !! start of a JSON object |
| 43 | + character(kind=CK,len=*),parameter :: end_object = CK_'}' !! end of a JSON object |
| 44 | + character(kind=CK,len=*),parameter :: start_array = CK_'[' !! start of a JSON array |
| 45 | + character(kind=CK,len=*),parameter :: end_array = CK_']' !! end of a JSON array |
| 46 | + character(kind=CK,len=*),parameter :: delimiter = CK_',' !! delimiter for JSON |
| 47 | + character(kind=CK,len=*),parameter :: colon_char = CK_':' !! colon character for JSON |
| 48 | + character(kind=CK,len=*),parameter :: start_array_alt = CK_'(' !! alternate start of JSON array for [[json_get_by_path_default]] |
| 49 | + character(kind=CK,len=*),parameter :: end_array_alt = CK_')' !! alternate end of JSON array for [[json_get_by_path_default]] |
| 50 | + character(kind=CK,len=*),parameter :: root = CK_'$' !! root for [[json_get_by_path_default]] |
| 51 | + character(kind=CK,len=*),parameter :: this = CK_'@' !! 'this' for [[json_get_by_path_default]] |
| 52 | + character(kind=CK,len=*),parameter :: dot = CK_'.' !! path separator for [[json_get_by_path_default]] |
53 | 53 | character(kind=CK,len=*),parameter :: tilde = CK_'~' !! RFC 6901 escape character
|
54 | 54 | character(kind=CK,len=*),parameter :: percent = CK_'%' !! Fortran path separator
|
55 | 55 | character(kind=CK,len=*),parameter :: single_quote = CK_"'" !! for JSONPath bracket-notation
|
56 |
| - character(kind=CK,len=*),parameter :: bspace = achar(8, kind=CK) |
57 |
| - character(kind=CK,len=*),parameter :: horizontal_tab = achar(9, kind=CK) |
58 |
| - character(kind=CK,len=*),parameter :: newline = achar(10, kind=CK) |
59 |
| - character(kind=CK,len=*),parameter :: formfeed = achar(12, kind=CK) |
60 |
| - character(kind=CK,len=*),parameter :: carriage_return = achar(13, kind=CK) |
61 |
| - character(kind=CK,len=*),parameter :: quotation_mark = achar(34, kind=CK) |
62 |
| - character(kind=CK,len=*),parameter :: slash = achar(47, kind=CK) |
63 |
| - character(kind=CK,len=*),parameter :: backslash = achar(92, kind=CK) |
| 56 | + character(kind=CK,len=*),parameter :: bspace = achar(8, kind=CK) !! JSON special character |
| 57 | + character(kind=CK,len=*),parameter :: horizontal_tab = achar(9, kind=CK) !! JSON special character |
| 58 | + character(kind=CK,len=*),parameter :: newline = achar(10, kind=CK) !! JSON special character |
| 59 | + character(kind=CK,len=*),parameter :: formfeed = achar(12, kind=CK) !! JSON special character |
| 60 | + character(kind=CK,len=*),parameter :: carriage_return = achar(13, kind=CK) !! JSON special character |
| 61 | + character(kind=CK,len=*),parameter :: quotation_mark = achar(34, kind=CK) !! JSON special character |
| 62 | + character(kind=CK,len=*),parameter :: slash = achar(47, kind=CK) !! JSON special character |
| 63 | + character(kind=CK,len=*),parameter :: backslash = achar(92, kind=CK) !! JSON special character |
64 | 64 |
|
65 | 65 | character(kind=CDK,len=*),parameter :: default_real_fmt = '(ss,E27.17E4)'
|
66 | 66 | !! default real number format statement (for writing real values to strings and files).
|
@@ -103,11 +103,11 @@ module json_parameters
|
103 | 103 | !Get the number of possible digits in the exponent when using decimal number system
|
104 | 104 | integer(IK),parameter :: maxexp = maxexponent(1.0_RK)
|
105 | 105 | integer(IK),parameter :: minexp = minexponent(1.0_RK)
|
106 |
| - integer(IK),parameter :: real_exponent_digits = floor( 1 + log10( & |
| 106 | + integer(IK),parameter :: real_exponent_digits = floor( 1_IK + log10( & |
107 | 107 | real(max(maxexp,abs(maxexp)),&
|
108 | 108 | kind=RK) ) )
|
109 | 109 |
|
110 |
| - integer(IK),parameter :: max_numeric_str_len = real_precision + real_exponent_digits + 6 |
| 110 | + integer(IK),parameter :: max_numeric_str_len = real_precision + real_exponent_digits + 6_IK |
111 | 111 | !! 6 = sign + leading 0 + decimal + 'E' + exponent sign + 1 extra
|
112 | 112 | character(kind=CDK,len=*),parameter :: int_fmt = '(ss,I0)' !! minimum width format for integers
|
113 | 113 |
|
|
0 commit comments