Expression object for the dense vector generate() function.
More...
#include <DVecGenExpr.h>
Inherits blaze::VecGenExpr< DenseVector< DVecGenExpr< VT, OP, TF >, TF > >, and blaze::Computation.
|
using | This = DVecGenExpr< VT, OP, TF > |
| Type of this DVecGenExpr instance.
|
|
using | BaseType = VecGenExpr< DenseVector< This, TF > > |
| Base type of this DVecGenExpr instance.
|
|
using | ResultType = RemoveCVRef_t< VT > |
| Result type for expression template evaluations.
|
|
using | TransposeType = TransposeType_t< VT > |
| Transpose type for expression template evaluations.
|
|
using | ElementType = ElementType_t< VT > |
| Resulting element type.
|
|
using | ReturnType = decltype(std::declval< OP >()(std::declval< size_t >())) |
| Return type for expression template evaluations.
|
|
using | CompositeType = const DVecGenExpr & |
| Data type for composite expression templates.
|
|
using | Operation = OP |
| Data type of the custom unary operation.
|
|
using | VectorType = DVecGenExpr< VT, OP, TF > |
| Type of the vector.
|
|
|
static constexpr bool | simdEnabled = false |
| Compilation switch for the expression template evaluation strategy.
|
|
static constexpr bool | smpAssignable = true |
| Compilation switch for the expression template assignment strategy.
|
|
static constexpr bool | transposeFlag |
| Transpose flag of the vector.
|
|
|
size_t | size_ |
| The size/dimension of the dense vector generator.
|
|
Operation | op_ |
| The custom unary operation.
|
|
template<typename VT, typename OP, bool TF>
class blaze::DVecGenExpr< VT, OP, TF >
Expression object for the dense vector generate() function.
The DVecGenExpr class represents the compile time expression for the generation of a custom dense vector via the generate() function.
◆ DVecGenExpr()
template<typename VT , typename OP , bool TF>
Constructor for the DVecGenExpr class.
- Parameters
-
size | The size/dimension of the dense vector generator. |
op | The custom unary operation. |
◆ at()
template<typename VT , typename OP , bool TF>
Checked access to the vector elements.
- Parameters
-
index | Access index. The index has to be in the range . |
- Returns
- The resulting value.
- Exceptions
-
std::out_of_range | Invalid vector access index. |
◆ begin()
template<typename VT , typename OP , bool TF>
Returns an iterator to the first non-zero element of the dense vector.
- Returns
- Iterator to the first non-zero element of the dense vector.
◆ canAlias()
template<typename VT , typename OP , bool TF>
template<typename T >
Returns whether the expression can alias with the given address alias.
- Parameters
-
alias | The alias to be checked. |
- Returns
- true in case the expression can alias, false otherwise.
◆ canSMPAssign()
template<typename VT , typename OP , bool TF>
Returns whether the expression can be used in SMP assignments.
- Returns
- true in case the expression can be used in SMP assignments, false if not.
◆ end()
template<typename VT , typename OP , bool TF>
Returns an iterator just past the last non-zero element of the dense vector.
- Returns
- Iterator just past the last non-zero element of the dense vector.
◆ isAliased()
template<typename VT , typename OP , bool TF>
template<typename T >
Returns whether the expression is aliased with the given address alias.
- Parameters
-
alias | The alias to be checked. |
- Returns
- true in case an alias effect is detected, false otherwise.
◆ isAligned()
template<typename VT , typename OP , bool TF>
Returns whether the operands of the expression are properly aligned in memory.
- Returns
- true in case the operands are aligned, false if not.
◆ operation()
template<typename VT , typename OP , bool TF>
Returns a copy of the custom unary operation.
- Returns
- A copy of the custom unary operation.
◆ operator*() [1/2]
|
constexprnoexceptinherited |
CRTP-based conversion operation for constant vectors.
- Returns
- Const reference of the actual type of the vector.
This operator performs the CRTP-based type-safe downcast to the actual type VT of the vector. It will return a constant reference to the actual type VT.
◆ operator*() [2/2]
|
constexprnoexceptinherited |
CRTP-based conversion operation for non-constant vectors.
- Returns
- Mutable reference of the actual type of the vector.
This operator performs the CRTP-based type-safe downcast to the actual type VT of the vector. It will return a mutable reference to the actual type VT.
◆ operator[]()
template<typename VT , typename OP , bool TF>
Subscript operator for the direct access to the vector elements.
- Parameters
-
index | Access index. The index has to be in the range . |
- Returns
- The resulting value.
◆ operator~() [1/2]
|
constexprnoexceptinherited |
CRTP-based conversion operation for constant vectors.
- Returns
- Constant reference of the actual type of the vector.
This operator performs the CRTP-based type-safe downcast to the actual type VT of the vector. It will return a constant reference to the actual type VT.
◆ operator~() [2/2]
|
constexprnoexceptinherited |
CRTP-based conversion operation for non-constant vectors.
- Returns
- Mutable reference of the actual type of the vector.
This operator performs the CRTP-based type-safe downcast to the actual type VT of the vector. It will return a mutable reference to the actual type VT.
◆ size()
template<typename VT , typename OP , bool TF>
Returns the current size/dimension of the vector.
- Returns
- The size of the vector.
The documentation for this class was generated from the following file: