! The argument list for the various `initialize` subroutines. ! ! See also: json_initialize_dummy_arguments.inc logical(LK),intent(in),optional :: verbose !! mainly useful for debugging (default is false) logical(LK),intent(in),optional :: compact_reals !! to compact the real number strings for output (default is true) logical(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(IK),intent(in),optional :: spaces_per_tab !! number of spaces per tab for indenting (default is 2) logical(LK),intent(in),optional :: strict_type_checking !! if true, no integer, double, or logical type !! conversions are done for the `get` routines !! (default is false). logical(LK),intent(in),optional :: trailing_spaces_significant !! for name and path comparisons, is trailing !! space to be considered significant. !! (default is false) logical(LK),intent(in),optional :: case_sensitive_keys !! for name and path comparisons, are they !! case sensitive. (default is true) logical(LK),intent(in),optional :: no_whitespace !! if true, printing the JSON structure is !! done without adding any non-significant !! spaces or linebreaks (default is false) logical(LK),intent(in),optional :: unescape_strings !! If false, then the raw escaped !! string is returned from [[json_get_string]] !! and similar routines. If true [default], !! then the string is returned unescaped. character(kind=CK,len=*),intent(in),optional :: comment_char !! If present, these characters are used !! to denote comments in the JSON file, !! which will be ignored if present. !! Example: `!`, `#`, or `/!#`. Setting this !! to a blank string disables the !! ignoring of comments. (Default is `/!#`). integer(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 !! (see [[json_get_by_path_rfc6901]]) !! * 3 : JSONPath "bracket-notation" !! see [[json_get_by_path_jsonpath_bracket]]) character(kind=CK,len=1),intent(in),optional :: path_separator !! The `path` separator to use !! in the "default" mode for !! the paths in the various !! `get_by_path` routines. !! Example: `.` [default] or `%`. !! Note: if `path_mode/=1` !! then this is ignored. logical(LK),intent(in),optional :: compress_vectors !! If true, then arrays of integers, !! nulls, doubles, and logicals are !! printed all on one line. !! [Note: `no_whitespace` will !! override this option if necessary]. !! (Default is False). logical(LK),intent(in),optional :: allow_duplicate_keys !! * If True [default] then no special checks !! are done to check for duplicate keys. !! * 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. logical(LK),intent(in),optional :: escape_solidus !! * 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 are still valid in !! all cases). logical(LK),intent(in),optional :: stop_on_error !! If an exception is raised, then immediately quit. !! (Default is False). integer(IK),intent(in),optional :: null_to_real_mode !! 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 a NaN. [default] !! * 3 : a `null` retrieved as a real !! will return 0.0. integer(IK),intent(in),optional :: non_normal_mode !! How to serialize NaN, Infinity, and !! -Infinity real values: !! !! * 1 : as strings (e.g., "NaN", !! "Infinity", "-Infinity") [default] !! * 2 : as JSON `null` values logical(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(LK),intent(in),optional :: strict_integer_type_checking !! * 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, an exception will be raised if the integer !! value cannot be read. !! !! (default is true)