wrap_json_create_by_path Subroutine

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 IntentOptional 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 specify by path

logical(kind=LK), intent(out), optional :: found

true if there were no errors (variable found or created)

logical(kind=LK), intent(out), optional :: was_created

true if it was actually created (as opposed to already being there)


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