parent
1f8663aad2
commit
cc5ab775bc
9 changed files with 181 additions and 2 deletions
|
|
@ -73,9 +73,36 @@ namespace rotgen
|
|||
: map( ptr, RowsAtCompileTime, ColsAtCompileTime )
|
||||
{}
|
||||
|
||||
map(concepts::entity auto const& other) : parent(other.base())
|
||||
{}
|
||||
|
||||
map& operator=(concepts::entity auto const& other)
|
||||
{
|
||||
parent::operator=(other.base());
|
||||
return *this;
|
||||
}
|
||||
|
||||
parent& base() { return static_cast<parent&>(*this); }
|
||||
parent const& base() const { return static_cast<const parent&>(*this); }
|
||||
|
||||
auto evaluate() const
|
||||
{
|
||||
auto res = static_cast<parent const &>(*this).eval();
|
||||
return as_concrete_type<decltype(res)>(res);
|
||||
}
|
||||
|
||||
decltype(auto) noalias() const
|
||||
{
|
||||
if constexpr(use_expression_templates) return base().noalias();
|
||||
else return *this;
|
||||
}
|
||||
|
||||
decltype(auto) noalias()
|
||||
{
|
||||
if constexpr(use_expression_templates) return base().noalias();
|
||||
else return *this;
|
||||
}
|
||||
|
||||
value_type& operator()(Index i, Index j) { return base()(i, j); }
|
||||
value_type operator()(Index i, Index j) const { return base()(i, j); }
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue