View source code
Display the source code in dmd/clone.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.

Function dmd.clone.buildCopyCtor

Generates a copy constructor if needCopyCtor() returns true. The generated copy constructor will be of the form: this(ref return scope inout(S) rhs) inout { this.field1 = rhs.field1; this.field2 = rhs.field2; ... }

bool buildCopyCtor (
  StructDeclaration sd,
  dmd.dscope.Scope* sc
);

Parameters

NameDescription
sd the struct for which the copy constructor is generated
sc the scope where the copy constructor is generated

Returns

true if struct sd defines a copy constructor (explicitly or generated), false otherwise.

Authors

Walter Bright

License

Boost License 1.0