Move the json_value pointer from one json_file to another. The “from” pointer is then nullified, but not destroyed.
If “from%p” is not associated, then an error is thrown.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(json_file), | intent(inout) | :: | to | |||
class(json_file), | intent(inout) | :: | from |
subroutine json_file_move_pointer(to,from)
implicit none
class(json_file),intent(inout) :: to
class(json_file),intent(inout) :: from
if (associated(from%p)) then
if (from%failed()) then
!Don't get the data if the FROM file has an
!active exception, since it may not be valid.
call to%core%throw_exception('Error in json_file_move_pointer: '//&
'error exception in FROM file.')
else
call to%initialize() !initialize and clear any exceptions that may be present
to%p => from%p
nullify(from%p)
end if
else
call to%core%throw_exception('Error in json_file_move_pointer: '//&
'pointer is not associated.')
end if
end subroutine json_file_move_pointer