json_update Interface

public interface json_update

These are like json_add, except if a child with the same name 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).

Calls

interface~~json_update~~CallsGraph interface~json_update json_update proc~json_update_logical json_update_logical interface~json_update->proc~json_update_logical proc~json_update_string json_update_string interface~json_update->proc~json_update_string proc~json_update_integer json_update_integer interface~json_update->proc~json_update_integer proc~json_update_double json_update_double interface~json_update->proc~json_update_double interface~throw_exception throw_exception proc~json_update_logical->interface~throw_exception interface~json_get json_get proc~json_update_logical->interface~json_get interface~json_add json_add proc~json_update_logical->interface~json_add proc~to_logical to_logical proc~json_update_logical->proc~to_logical proc~json_info json_info proc~json_update_logical->proc~json_info proc~json_update_string->interface~throw_exception proc~json_update_string->interface~json_get proc~json_update_string->interface~json_add proc~json_update_string->proc~json_info proc~to_string to_string proc~json_update_string->proc~to_string proc~json_update_integer->interface~throw_exception proc~json_update_integer->interface~json_get proc~json_update_integer->interface~json_add proc~json_update_integer->proc~json_info proc~to_integer to_integer proc~json_update_integer->proc~to_integer proc~json_update_double->interface~throw_exception proc~json_update_double->interface~json_get proc~json_update_double->interface~json_add proc~json_update_double->proc~json_info proc~to_double to_double proc~json_update_double->proc~to_double proc~json_throw_exception json_throw_exception interface~throw_exception->proc~json_throw_exception proc~json_get_string json_get_string interface~json_get->proc~json_get_string proc~json_get_double_vec_with_path json_get_double_vec_with_path interface~json_get->proc~json_get_double_vec_with_path proc~json_get_logical json_get_logical interface~json_get->proc~json_get_logical proc~json_get_integer_vec_with_path json_get_integer_vec_with_path interface~json_get->proc~json_get_integer_vec_with_path proc~json_get_logical_vec_with_path json_get_logical_vec_with_path interface~json_get->proc~json_get_logical_vec_with_path proc~json_get_array json_get_array interface~json_get->proc~json_get_array proc~json_get_double json_get_double interface~json_get->proc~json_get_double proc~json_get_string_vec_with_path json_get_string_vec_with_path interface~json_get->proc~json_get_string_vec_with_path proc~json_get_by_path json_get_by_path interface~json_get->proc~json_get_by_path proc~json_get_integer json_get_integer interface~json_get->proc~json_get_integer proc~json_get_double_with_path json_get_double_with_path interface~json_get->proc~json_get_double_with_path proc~json_get_logical_with_path json_get_logical_with_path interface~json_get->proc~json_get_logical_with_path proc~json_get_integer_with_path json_get_integer_with_path interface~json_get->proc~json_get_integer_with_path proc~json_get_logical_vec json_get_logical_vec interface~json_get->proc~json_get_logical_vec proc~json_get_string_with_path json_get_string_with_path interface~json_get->proc~json_get_string_with_path proc~json_get_string_vec json_get_string_vec interface~json_get->proc~json_get_string_vec proc~json_get_integer_vec json_get_integer_vec interface~json_get->proc~json_get_integer_vec proc~json_get_array_with_path json_get_array_with_path interface~json_get->proc~json_get_array_with_path proc~json_get_double_vec json_get_double_vec interface~json_get->proc~json_get_double_vec proc~json_value_add_logical json_value_add_logical interface~json_add->proc~json_value_add_logical proc~json_value_add_double json_value_add_double interface~json_add->proc~json_value_add_double proc~json_value_add_member json_value_add_member interface~json_add->proc~json_value_add_member proc~json_value_add_integer json_value_add_integer interface~json_add->proc~json_value_add_integer proc~json_value_add_double_vec json_value_add_double_vec interface~json_add->proc~json_value_add_double_vec proc~json_value_add_logical_vec json_value_add_logical_vec interface~json_add->proc~json_value_add_logical_vec proc~json_value_add_integer_vec json_value_add_integer_vec interface~json_add->proc~json_value_add_integer_vec proc~json_value_add_string_vec json_value_add_string_vec interface~json_add->proc~json_value_add_string_vec proc~json_value_add_string json_value_add_string interface~json_add->proc~json_value_add_string proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data proc~json_count json_count proc~json_info->proc~json_count proc~json_get_string->interface~throw_exception proc~unescape_string unescape_string proc~json_get_string->proc~unescape_string proc~json_get_double_vec_with_path->interface~json_get proc~json_get_logical->interface~throw_exception proc~json_get_integer_vec_with_path->interface~json_get proc~json_get_logical_vec_with_path->interface~json_get proc~json_get_array->interface~throw_exception proc~json_get_array->proc~json_count proc~json_get_double->interface~throw_exception proc~json_get_string_vec_with_path->interface~json_get proc~json_get_by_path->interface~throw_exception interface~json_get_child json_get_child proc~json_get_by_path->interface~json_get_child proc~json_clear_exceptions json_clear_exceptions proc~json_get_by_path->proc~json_clear_exceptions proc~string_to_integer string_to_integer proc~json_get_by_path->proc~string_to_integer proc~json_get_integer->interface~throw_exception proc~json_get_double_with_path->interface~throw_exception proc~json_get_double_with_path->proc~json_get_double proc~json_get_double_with_path->proc~json_get_by_path proc~json_get_double_with_path->proc~json_clear_exceptions proc~json_get_logical_with_path->interface~throw_exception proc~json_get_logical_with_path->proc~json_get_logical proc~json_get_logical_with_path->proc~json_get_by_path proc~json_get_logical_with_path->proc~json_clear_exceptions proc~json_get_integer_with_path->interface~throw_exception proc~json_get_integer_with_path->proc~json_get_by_path proc~json_get_integer_with_path->proc~json_get_integer proc~json_get_integer_with_path->proc~json_clear_exceptions proc~json_get_logical_vec->interface~json_get proc~json_get_string_with_path->interface~throw_exception proc~json_get_string_with_path->proc~json_get_string proc~json_get_string_with_path->proc~json_get_by_path proc~json_get_string_with_path->proc~json_clear_exceptions proc~json_get_string_vec->interface~json_get proc~json_get_integer_vec->interface~json_get proc~json_get_array_with_path->interface~throw_exception proc~json_get_array_with_path->proc~json_get_array proc~json_get_array_with_path->proc~json_get_by_path proc~json_get_array_with_path->proc~json_clear_exceptions proc~json_get_double_vec->interface~json_get proc~unescape_string->interface~throw_exception interface~to_unicode to_unicode proc~unescape_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_value_get_by_index json_value_get_by_index interface~json_get_child->proc~json_value_get_by_index proc~json_value_get_by_name_chars json_value_get_by_name_chars interface~json_get_child->proc~json_value_get_by_name_chars proc~string_to_integer->interface~throw_exception proc~json_value_get_by_index->interface~throw_exception proc~json_value_get_by_name_chars->interface~throw_exception proc~json_value_get_by_name_chars->proc~json_count proc~json_value_add_logical->interface~json_add proc~json_value_add_logical->proc~to_logical proc~json_value_create json_value_create proc~json_value_add_logical->proc~json_value_create proc~json_value_add_double->interface~json_add proc~json_value_add_double->proc~json_value_create proc~json_value_add_double->proc~to_double proc~json_value_add_integer->interface~json_add proc~json_value_add_integer->proc~json_value_create proc~json_value_add_integer->proc~to_integer proc~json_value_add_double_vec->interface~json_add proc~json_value_add_double_vec->proc~json_value_create proc~to_array to_array proc~json_value_add_double_vec->proc~to_array proc~json_value_add_logical_vec->interface~json_add proc~json_value_add_logical_vec->proc~json_value_create proc~json_value_add_logical_vec->proc~to_array proc~json_value_add_integer_vec->interface~json_add proc~json_value_add_integer_vec->proc~json_value_create proc~json_value_add_integer_vec->proc~to_array proc~json_value_add_string_vec->interface~json_add proc~json_value_add_string_vec->proc~json_value_create proc~json_value_add_string_vec->proc~to_array proc~json_value_add_string->interface~json_add proc~json_value_add_string->proc~json_value_create proc~escape_string escape_string proc~json_value_add_string->proc~escape_string proc~json_value_add_string->proc~to_string proc~to_double->proc~destroy_json_data proc~to_integer->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data
Help

Called By

interface~~json_update~~CalledByGraph interface~json_update json_update proc~rename rename proc~rename->interface~json_update proc~json_file_update_integer json_file_update_integer proc~json_file_update_integer->interface~json_update proc~json_file_update_string json_file_update_string proc~json_file_update_string->interface~json_update proc~test_12 test_12 proc~test_12->interface~json_update proc~test_2 test_2 proc~test_2->interface~json_update proc~test_1 test_1 proc~test_1->interface~json_update proc~test_10 test_10 proc~test_10->interface~json_update proc~json_file_update_real json_file_update_real proc~json_file_update_real->interface~json_update proc~json_file_update_logical json_file_update_logical proc~json_file_update_logical->interface~json_update proc~wrap_json_file_update_integer wrap_json_file_update_integer proc~wrap_json_file_update_integer->proc~json_file_update_integer proc~json_file_update_string_name_ascii json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->proc~json_file_update_string proc~wrap_json_file_update_string wrap_json_file_update_string proc~wrap_json_file_update_string->proc~json_file_update_string proc~json_file_update_string_val_ascii json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->proc~json_file_update_string program~jf_test_12 jf_test_12 program~jf_test_12->proc~test_12 program~jf_test_2 jf_test_2 program~jf_test_2->proc~test_2 program~jf_test_1 jf_test_1 program~jf_test_1->proc~test_1 program~jf_test_10 jf_test_10 program~jf_test_10->proc~test_10 proc~wrap_json_file_update_real wrap_json_file_update_real proc~wrap_json_file_update_real->proc~json_file_update_real proc~wrap_json_file_update_logical wrap_json_file_update_logical proc~wrap_json_file_update_logical->proc~json_file_update_logical
Help

Module Procedures

private subroutine json_update_logical(p, name, val, found)

Arguments

Type IntentOptional AttributesName
type(json_value), , pointer:: p
character(kind=CK,len=*), intent(in) :: name
logical(kind=LK), intent(in) :: val
logical(kind=LK), intent(out) :: found

Description

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.

private subroutine json_update_double(p, name, val, found)

Arguments

Type IntentOptional AttributesName
type(json_value), , pointer:: p
character(kind=CK,len=*), intent(in) :: name
real(kind=RK), intent(in) :: val
logical(kind=LK), intent(out) :: found

Description

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.

private subroutine json_update_integer(p, name, val, found)

Arguments

Type IntentOptional AttributesName
type(json_value), , pointer:: p
character(kind=CK,len=*), intent(in) :: name
integer(kind=IK), intent(in) :: val
logical(kind=LK), intent(out) :: found

Description

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.

private subroutine json_update_string(p, name, val, found)

Arguments

Type IntentOptional AttributesName
type(json_value), , pointer:: p
character(kind=CK,len=*), intent(in) :: name
character(kind=CK,len=*), intent(in) :: val
logical(kind=LK), intent(out) :: found

Description

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.