json_parameters Module

Variables

TypeVisibility AttributesNameInitial
character(kind=CDK,len=*), public, parameter:: json_ext ='.json'

JSON file extension

character(kind=CK,len=*), public, parameter:: space =' '
character(kind=CK,len=*), public, parameter:: start_object ='{'
character(kind=CK,len=*), public, parameter:: end_object ='}'
character(kind=CK,len=*), public, parameter:: start_array ='['
character(kind=CK,len=*), public, parameter:: end_array =']'
character(kind=CK,len=*), public, parameter:: delimiter =','
character(kind=CK,len=*), public, parameter:: colon_char =':'
character(kind=CK,len=*), public, parameter:: start_array_alt ='('

for [[json_get_by_path]]

character(kind=CK,len=*), public, parameter:: end_array_alt =')'

for [[json_get_by_path]]

character(kind=CK,len=*), public, parameter:: root ='$'

for [[json_get_by_path]]

character(kind=CK,len=*), public, parameter:: this ='@'

for [[json_get_by_path]]

character(kind=CK,len=*), public, parameter:: child ='.'

for [[json_get_by_path]]

character(kind=CK,len=*), public, parameter:: bspace =achar(8)
character(kind=CK,len=*), public, parameter:: horizontal_tab =achar(9)
character(kind=CK,len=*), public, parameter:: newline =achar(10)
character(kind=CK,len=*), public, parameter:: formfeed =achar(12)
character(kind=CK,len=*), public, parameter:: carriage_return =achar(13)
character(kind=CK,len=*), public, parameter:: quotation_mark =achar(34)
character(kind=CK,len=*), public, parameter:: slash =achar(47)
character(kind=CK,len=*), public, parameter:: backslash =achar(92)
character(kind=CDK,len=*), public, parameter:: default_real_fmt ='(ss,E26.16E4)'

default real number format statement (for writing real values to strings and files). Note that this can be overridden by calling [[json_initialize]].

character(kind=CK,len=*), public, parameter:: star ='*'

for invalid numbers and list-directed real output

character(kind=CK,len=26), protected :: upper ='ABCDEFGHIJKLMNOPQRSTUVWXYZ'

uppercase characters

character(kind=CK,len=26), protected :: lower ='abcdefghijklmnopqrstuvwxyz'

lowercase characters

character(kind=CK,len=4), protected :: null_str ='null'

JSON Null variable string

character(kind=CK,len=4), protected :: true_str ='true'

JSON logical True string

character(kind=CK,len=5), protected :: false_str ='false'

JSON logical False string

character(kind=CK,len=*), public, parameter, dimension(32):: control_chars =[(achar(i_), i_=1, 31), achar(127)]

Control characters, possibly in unicode

integer(kind=IK), public, parameter:: rp_safety_factor =1_IK
integer(kind=IK), public, parameter:: rp_addl_safety =1_IK
integer(kind=IK), public, parameter:: real_precision =rp_safety_factor*precision(1.0_RK)+rp_addl_safety
integer(kind=IK), public, parameter:: maxexp =maxexponent(1.0_RK)
integer(kind=IK), public, parameter:: minexp =minexponent(1.0_RK)
integer(kind=IK), public, parameter:: real_exponent_digits =floor(1+log10(real(max(maxexp, abs(maxexp)), kind=RK)))
integer(kind=IK), public, parameter:: max_numeric_str_len =real_precision+real_exponent_digits+6

6 = sign + leading 0 + decimal + 'E' + exponent sign + 1 extra

character(kind=CDK,len=*), public, parameter:: int_fmt ='(ss,I0)'

minimum width format for integers

integer(kind=IK), public, parameter:: chunk_size =100_IK

for allocatable strings: allocate chunks of this size

integer(kind=IK), public, 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

integer(kind=IK), public, parameter:: seq_chunk_size =256_IK

chunk size for reading sequential files

integer(kind=IK), public, parameter:: pushed_char_size =10_IK

magic number