# fn() arrayMoveForward
Moves a range of objects into another range of objects starting from the first element.

Defined in | <seqan/basic.h>
Signature | `void arrayMoveForward(sourceBegin, sourceEnd, target);`

## Parameters

`sourceEnd` | Iterator behind the last element of the source array. `sourceEnd` must have the same type as `sourceBegin`.
`sourceBegin` | Iterator to the first element of the source array.
`target` | Iterator to the first element of the target array. The target capacity should be at least as long as the source range.

## Detailed Description

The function possibly clears (but does not destroy) the source elements. If source elements must persist, consider to use arrayCopyForward instead.

Be careful if source and target range overlap, because in this case some source elements could be accidently overwritten before they are moved.

## Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

#### Dox Sources

    /*!
     * @fn arrayMoveForward
     *
     * @headerfile <seqan/basic.h>
     *
     * @brief Moves a range of objects into another range of objects starting from
     *        the first element.
     *
     * @signature void arrayMoveForward(sourceBegin, sourceEnd, target);
     *
     * @param[in] sourceEnd Iterator behind the last element of the source array.
     *                      <tt>sourceEnd</tt> must have the same type as
     *                      <tt>sourceBegin</tt>.
     * @param[in] sourceBegin Iterator to the first element of the source array.
     * @param[in] target Iterator to the first element of the target array. The
     *                   target capacity should be at least as long as the source
     *                   range.
     *
     * The function possibly clears (but does not destroy) the source elements. If
     * source elements must persist, consider to use arrayCopyForward instead.
     *
     * Be careful if source and target range overlap, because in this case some
     * source elements could be accidently overwritten before they are moved.
     */