Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(json_file), | intent(inout) | :: | to | |||
class(json_file), | intent(inout) | :: | from |
Move the json_value pointer from one json_file to another. The "from" pointer is then nullified, but not destroyed.
Solid arrows point from a parent (sub)module to the submodule which is descended from it. Dashed arrows point from a module being used to the module using it.
Solid arrows point from one derived type to another which extends (inherits from) it. Dashed arrows point from a derived type to another type containing it as a components, with a label listing the name(s) of said component(s).
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module.
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
to%p => from%p
nullify(from%p)
else
call throw_exception('Error in json_file_move_pointer: '//&
'pointer is not associated.')
end if
end subroutine json_file_move_pointer