| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(port_list_t), | intent(inout) | :: | me | |||
| integer, | intent(in) | :: | idx | |||
| integer, | intent(in) | :: | loc(:) | |||
| integer, | intent(in) | :: | start_state_idx | |||
| class(port_t), | intent(in), | target | :: | ports_array(:) |
which will have updated loc (should be inout?) |
Returned view on the ports array with updated values of: loc
function port_list_update(me, idx, loc, start_state_idx, ports_array) result(view) class(port_list_t), intent(inout) :: me integer, intent(in) :: idx !! integer, intent(in) :: loc(:) !! integer, intent(in) :: start_state_idx !! class(port_t), target, intent(in) :: ports_array(:) !! which will have updated loc (should be inout?) class(port_t), pointer :: view(:) !! Returned view on the ports array with updated values of: loc integer :: start_idx start_idx = sum(me%nb(1:idx)) - me%nb(idx) view => ports_array(start_idx+1:start_idx+me%nb(idx)) view%loc = loc + start_state_idx end function port_list_update