Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Command-line Reference
  - Feature Overview
  - Articles
- Downloads
- Packages
- Community
  - Blog
  - Orgs using D
  - Twitter
  - Forums
  - IRC
  - Wiki
  - GitHub
  - Issues
  - Get involved
  - Contributors
  - Foundation
  - Donate
  - Sponsors
- Resources
  - Tour
  - Books
  - Tutorials
  - Tools
  - Editors
  - IDEs
  - Visual D
  - Acknowledgments
  - D Style
  - Glossary
  - Sitemap

Search
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 a local clone.

# rt.arrayassign

Implementation of array assignment support routines.
License:
Distributed under the Boost Software License 1.0.
Authors:
Walter Bright, Kenji Hara

Source src/rt/arrayassign.d

void[] `_d_arrayassign`(TypeInfo `ti`, void[] `from`, void[] `to`);
  Keep for backward binary compatibility. This function can be removed in the future.
void[] `_d_arrayassign_l`(TypeInfo `ti`, void[] `src`, void[] `dst`, void* `ptmp`);
  Does array assignment (not construction) from another lvalue array of the same element type. Handles overlapping copies.

  Input `ti` TypeInfo of the element type. `dst` Points target memory. Its .length is equal to the element count, not byte length. `src` Points source memory. Its .length is equal to the element count, not byte length. `ptmp` Temporary memory for element swapping.

void[] `_d_arrayassign_r`(TypeInfo `ti`, void[] `src`, void[] `dst`, void* `ptmp`);
  Does array assignment (not construction) from another rvalue array of the same element type.

  Input `ti` TypeInfo of the element type. `dst` Points target memory. Its .length is equal to the element count, not byte length. `src` Points source memory. Its .length is equal to the element count, not byte length. It is always allocated on stack and never overlapping with `dst`. `ptmp` Temporary memory for element swapping.

void[] `_d_arrayctor`(TypeInfo `ti`, void[] `from`, void[] `to`);
  Does array initialization (not assignment) `from` another array of the same element type. `ti` is the element type.
void* `_d_arraysetassign`(void* `p`, void* `value`, int `count`, TypeInfo `ti`);
  Do assignment to an array. `p`[0 .. `count`] = `value`;
void* `_d_arraysetctor`(void* `p`, void* `value`, int `count`, TypeInfo `ti`);
  Do construction of an array. `ti`[`count`] `p` = `value`;

Copyright © 1999-2018 by the D Language Foundation | Page generated by Ddoc on Sat Apr 14 16:39:12 2018