diff --git a/doc/matrix_expression.htm b/doc/matrix_expression.htm index 06e44e56..d83364e2 100644 --- a/doc/matrix_expression.htm +++ b/doc/matrix_expression.htm @@ -58,8 +58,47 @@ const expression_type &operator () () Returns a reference of the expression. + +matrix_row<E> operator[] (std::size_t i) +Returns the specified proxy. + + +matrix_row<E> row (std::size_t i) +Returns the specified proxy. + + +matrix_column<E> column (std::size_t i) +Returns the specified proxy. + + +matrix_range<E> range (std::size_t start1, std::size_t stop1, std::size_t start2, std::size_t stop2) +Returns the specified proxy. + + +matrix_slice<E> slice (std::size_t start1, std::ptrdiff_t stride1, std::size_t size1, std::size_t start2, std::ptrdiff_t stride2, std::size_t size2) +Returns the specified proxy. + + +matrix_range<E> project (const range &r1, const range &r2) +Returns the specified proxy. + + +matrix_slice<E> project (const slice &s1, const slice &s2) +Returns the specified proxy. + + +matrix_indirect<E, A> project (const indirect_array<A> &ia1, const indirect_array<A> &ia2) +Returns the specified proxy. + +

Notes

+

The operator[], row, column, range, slice and project function parameters are the fixed types std::size_t +and std::ptrdiff_t. This is an implementation issue and the types may change to E::size_type +and E:difference_type in a future implementation.

+

The operator[], row, column, range, slice and project functions propagate the expression's constantness. Therefore there proxy returned +for a constant matrix_expression<E> is based on const E.

+

Matrix References

Reference

diff --git a/doc/vector_expression.htm b/doc/vector_expression.htm index 410ffd63..01c39a4d 100644 --- a/doc/vector_expression.htm +++ b/doc/vector_expression.htm @@ -33,6 +33,11 @@ including class vector itself.

The type of the vector expression.   + +A +Base type of an indirect_array. +  +

Model of

@@ -58,8 +63,35 @@ const expression_type &operator () () Returns a reference of the expression. + +vector_range<E> range (std::size_t start, std::size_t stop) +Returns the specified proxy. + + +vector_slice<E> slice (std::size_t start, std::ptrdiff_t stride, std::size_t size) +Returns the specified proxy. + + +vector_range<E> project (const range &r) +Returns the specified proxy. + + +vector_slice<E> project (const slice &s) +Returns the specified proxy. + + +vector_indirect<E, A> project (const indirect_array<A> &ia) +Returns the specified proxy. + +

Notes

+

The range, slice and project function parameters are the fixed types std::size_t +and std::ptrdiff_t. This is an implementation issue and the types may change to E::size_type +and E:difference_type in a future implementation.

+

The range, slice and project functions propagate the expression's constantness. Therefore there proxy returned +for a constant vector_expression<E> is based on const E.

+

Vector References

Reference