From 495cc85c1cdf2ee9d369e7fe08d5d7d94061b4f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carsten=20Gr=C3=A4ser?= <graeser@dune-project.org> Date: Tue, 23 Aug 2016 18:29:57 +0200 Subject: [PATCH] [cleanup] Use Dune::is_indexable --- dune/solvers/common/resize.hh | 26 +++----------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/dune/solvers/common/resize.hh b/dune/solvers/common/resize.hh index 5bcda098..a1bbeafa 100644 --- a/dune/solvers/common/resize.hh +++ b/dune/solvers/common/resize.hh @@ -5,6 +5,7 @@ #include <dune/common/indices.hh> #include <dune/common/concept.hh> +#include <dune/common/typetraits.hh> #include <dune/solvers/common/defaultbitvector.hh> @@ -13,27 +14,6 @@ namespace Dune { namespace Solvers { -namespace Concept { - -struct HasResize -{ - template<class C> - auto require(C&& c) -> decltype( - c.resize(0) - ); -}; - -template<class Index> -struct HasBracketOperator -{ - template<class T> - auto require(T&& t) -> decltype( - t[std::declval<Index>()] - ); -}; - -} // namespace Concept - namespace Impl { @@ -49,14 +29,14 @@ void resizeInitialize(Dune::BitSetVector<size, Alloc>& x, const Vector& y, bool } template<class TargetVector, class Vector, class Value, - std::enable_if_t<not models<Dune::Solvers::Concept::HasBracketOperator<std::integral_constant<std::size_t,0> >, TargetVector>(), int> = 0> + std::enable_if_t<not Dune::is_indexable<TargetVector, std::integral_constant<std::size_t,0> >::value, int> = 0> void resizeInitialize(TargetVector& x, const Vector& y, const Value& value) { x = value; } template<class TargetVector, class Vector, class Value, - std::enable_if_t< models<Dune::Solvers::Concept::HasBracketOperator<std::integral_constant<std::size_t,0> >, TargetVector>(), int> = 0> + std::enable_if_t<Dune::is_indexable<TargetVector, std::integral_constant<std::size_t,0> >::value, int> = 0> void resizeInitialize(TargetVector& x, const Vector& y, const Value& value) { namespace H = Dune::Hybrid; -- GitLab