Skip to content

[WIP] Extend transpose(...) utility function to store passed r-value references

Carsten Gräser requested to merge feature/transpose-wrapper-of-rvalue into master

(This is based on/includes !1100 (merged). So the latter should be merged before.)

Extend transpose(...) utility function to store passed r-value references

Internally this patch changes the storage and template parameter of Impl::TransposedMatrixWrapper such that the passed matrix is always stored by value. By also adding support to pass and store a std::reference_wrapper this allows to store references and values.

The interface function transpose(matrix) now either stores std::cref(matrix) or matrix in the wrapper depending on whether matrix is an l-value or r-value reference.

Edited by Carsten Gräser

Merge request reports