Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Command-line Reference
  - Feature Overview
  - Articles
- Downloads
- Packages
- Community
  - Blog
  - Orgs using D
  - Twitter
  - Forums
  - IRC
  - Community Discord
  - Wiki
  - GitHub
  - Issues
  - Get involved
  - Contributors
  - Foundation
  - Security Team
  - Donate
  - Sponsors
- Resources
  - Tour
  - Books
  - Tutorials
  - Tools
  - Editors
  - IDEs
  - run.dlang.io
  - 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.

# core.internal.array.operations

This module contains support array (vector) operations
License:
Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)

Source core/internal/array/operations.d

pure nothrow @nogc @trusted T[] `arrayOp`(T : T[], Args...)(T[] `res`, Filter!(isType, Args) `args`);
  Perform array (vector) operations and store the result in `res`. Operand types and operations are passed as template arguments in Reverse Polish Notation (RPN).
  Operands can be slices or scalar types. The element types of all slices and all scalar types must be implicitly convertible to T.
  Operations are encoded as strings, e.g. "+", "%", "*=". Unary operations are prefixed with "u", e.g. "u-", "u~". Only the last operation can and must be an assignment ("=") or op-assignment ("op=").
  All slice operands must have the same length as the result slice.
  Parameters:

  Args | operand types and operations in RPN
  T[] `res` | the slice in which to store the results
  Filter!(isType, Args) `args` | operand values

  Returns:
  the slice containing the result

Copyright © 1999-2023 by the D Language Foundation | Page generated by Ddoc on Mon May 1 15:49:18 2023