blaze::RemoveAdaptor< T > Struct Template Reference

Removal of top level adaptor types.In case the given type is an adaptor type (SymmetricMatrix, LowerMatrix, UpperMatrix, ...), the RemoveAdaptor type trait removes the adaptor and extracts the contained general matrix type. Else the given type is returned as is. Note that cv-qualifiers are preserved. More...

#include <RemoveAdaptor.h>

Detailed Description

template<typename T>
struct blaze::RemoveAdaptor< T >

Removal of top level adaptor types.

In case the given type is an adaptor type (SymmetricMatrix, LowerMatrix, UpperMatrix, ...), the RemoveAdaptor type trait removes the adaptor and extracts the contained general matrix type. Else the given type is returned as is. Note that cv-qualifiers are preserved.

using SymmetricDynamic = SymmetricMatrix< DynamicMatrix<int> >;
using LowerCompressed = LowerMatrix< CompressedMatrix<float> >;
using UpperDynamic = UpperMatrix< DynamicMatrix<double> >;
blaze::RemoveAdaptor< SymmetricDynamic >::Type // Results in 'DynamicMatrix<int>'
blaze::RemoveAdaptor< const LowerCompressed >::Type // Results in 'const CompressedMatrix<float>'
blaze::RemoveAdaptor< volatile UpperDynamic >::Type // Results in 'volatile DynamicMatrix<double>'
blaze::RemoveAdaptor< const DynamicVector<int> >::Type // Results in 'const DynamicVector<int>'
blaze::RemoveAdaptor< volatile DynamicMatrix<int> >::Type // Results in 'volatile DynamicMatrix<int>'

The documentation for this struct was generated from the following file: