DList.insertBefore - multiple declarations

Function DList.insertBefore

Inserts new elements before r.

size_t insertBefore(R) (
  DList.Range r,
  R el
)
if (isImplicitlyConvertible!(R, T));

size_t insertBefore (
  DList.Range r,
  ref T el
) @trusted;

size_t insertBefore(R) (
  DList.Range r,
  scope R el
)
if (!isInfinite!R && isInputRange!R && isImplicitlyConvertible!(ElementType!R, T));

Parameters

NameDescription
R Type of the inserted value(s).
r Range extracted from this list.
el New element(s).

Returns

The number of elements inserted.

Precondition

r is extracted from this list.

Example

auto l1 = DList!int([234, 5, 1]);
auto l2 = DList!int([5, 1]);
l2.insertBefore(l2[], 234);
assert(l1 == l2);

Example

auto l1 = DList!int([234, 5, 1]);
auto l2 = DList!int([5, 1]);
int var = 234;

l2.insertBefore(l2[], var);
assert(l1 == l2);

Example

auto l1 = DList!int([5, 234, 30, 1]);
auto l2 = DList!int([5, 1]);
auto r = l2[];
r.popFront();
l2.insertBefore(r, [234, 30]);
assert(l1 == l2);

Function DList.insertBefore

Inserts elements from a static array before r.

size_t insertBefore(size_t R) (
  DList.Range r,
  T[R] el
);

Parameters

NameDescription
R Static array size.
r Range extracted from this list.
el New elements.

Returns

The number of elements inserted.

Precondition

r is extracted from this list.