fdoc

subroutinegrow_edgespureprivate

pure subroutine grow_edges(w)

Make room for more edges.

Arguments

NameTypeIntentAttributesDescription
wtype(walk_t)inout

the working space

Source

Show the code
pure subroutine grow_edges(w)
    type(walk_t), intent(inout) :: w    !! the working space
    integer, allocatable :: grown(:)
    integer :: n

    n = size(w%from)
    allocate (grown(2*n))
    grown(1:n) = w%from
    call move_alloc(grown, w%from)
    allocate (grown(2*n))
    grown(1:n) = w%to
    call move_alloc(grown, w%to)
end subroutine grow_edges

Graphs

Called by