Initialize primitive.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(primitive_compressible), | intent(inout) | :: | self | Primitive. |
||
| class(primitive_object), | intent(in), | optional | :: | initial_state | Initial state. |
subroutine initialize(self, initial_state)
!< Initialize primitive.
class(primitive_compressible), intent(inout) :: self !< Primitive.
class(primitive_object), intent(in), optional :: initial_state !< Initial state.
if (present(initial_state)) then
select type(initial_state)
class is(primitive_compressible)
self = initial_state
endselect
else
call self%destroy
endif
endsubroutine initialize