View source code
Display the source code in object.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

object.dup - multiple declarations

Function dup

Creates a new associative array of the same size and copies the contents of the associative array into it.

V[K] dup(T, K, V) (
  T aa

V[K] dup(T, K, V) (
  T* aa


aa The associative array.


auto aa = ["k1": 2];
auto a2 = aa.dup;
aa["k2"] = 3;
assert("k2" !in a2);

Function dup

Provide the .dup array property.

auto dup(T) (
  T[] a
) @property
if (!is(const(T) : T));

T[] dup(T) (
  const(T)[] a
) @property
if (is(const(T) : T));


auto arr = [1, 2];
auto arr2 = arr.dup;
arr[0] = 0;
writeln(arr); // [0, 2]
writeln(arr2); // [1, 2]


Walter Bright, Sean Kelly


Boost License 1.0.