Function CSTL_vector_move_assign

Source
pub unsafe extern "C" fn CSTL_vector_move_assign(
    instance: CSTL_VectorRef,
    type_: CSTL_Type,
    move_: CSTL_MoveTypeCRef,
    other_instance: CSTL_VectorRef,
    alloc: *mut CSTL_Alloc,
    other_alloc: *mut CSTL_Alloc,
    propagate_alloc: bool,
) -> bool
Expand description

Moves the contents of other_instance to the contents of instance.

If propagate_alloc == true storage is replaced with storage of other_instance. Then, instance uses other_alloc as its allocator.

If propagate_alloc == false && alloc != other_alloc then storage is reused and individual elements of other_instance are moved in. If the allocation fails, returns false, otherwise always returns true. Then, instance uses alloc as its allocator.

You are responsible for replacing the allocator outside of CSTL_VectorVal if applicable.