performance-*,
-performance-inefficient-string-concatenation,
-performance-no-automatic-move,
+ -performance-avoid-endl,
readability-qualified-auto
WarningsAsErrors: '*'
// triangulation is 1D, e.g., in the case of codim-1 meshes.
#ifdef DEAL_II_WITH_P4EST
template <int dim, int spacedim = dim>
- using DistributedTriangulation = typename std::conditional<
+ using DistributedTriangulation = typename std::conditional_t<
dim == 1,
parallel::shared::Triangulation<dim, spacedim>,
- parallel::distributed::Triangulation<dim, spacedim>>::type;
+ parallel::distributed::Triangulation<dim, spacedim>>;
#else
template <int dim, int spacedim = dim>
using DistributedTriangulation =
* Swap the current object's contents with those of the given argument.
*/
void
- swap(Patch<dim, spacedim> &other_patch);
+ swap(Patch<dim, spacedim> &other_patch) noexcept;
/**
* Value to be used if this patch has no neighbor on one side.
* Swap the current object's contents with those of the given argument.
*/
void
- swap(Patch<0, spacedim> &other_patch);
+ swap(Patch<0, spacedim> &other_patch) noexcept;
/**
* Value to be used if this patch has no neighbor on one side.
* public:
* // const iterators store a const pointer
* using container_pointer_type
- * = typename std::conditional<Constness,
- * const Container<T>*,
- * Container<T>*>::type;
+ * = std::conditional_t<Constness,
+ * const Container<T>*,
+ * Container<T>*>;
*
* // This alias is assumed to exist.
* using size_type = std::size_t;
*
* @note The actual return type of this function is
* @code
- * std::conditional<dim == 1,
- * std::array<Quadrature<1>, dim>,
- * const std::array<Quadrature<1>, dim> &>::type
+ * std::conditional_t<dim == 1,
+ * std::array<Quadrature<1>, dim>,
+ * const std::array<Quadrature<1>, dim> &>
* @endcode
* The type is abbreviated in the online documentation to improve
* readability of this page.
*/
#ifndef DOXYGEN
- typename std::conditional<dim == 1,
- std::array<Quadrature<1>, dim>,
- const std::array<Quadrature<1>, dim> &>::type
+ std::conditional_t<dim == 1,
+ std::array<Quadrature<1>, dim>,
+ const std::array<Quadrature<1>, dim> &>
#else
const std::array<Quadrature<1>, dim> &
#endif
(void)std::declval<typename ADNumberTrait::real_type>(),
(void)std::declval<typename ADNumberTrait::derivative_type>(),
void())>
- : std::conditional<
+ : std::conditional_t<
std::is_floating_point_v<typename ADNumberTrait::real_type>,
std::false_type,
- std::true_type>::type
+ std::true_type>
{};
/**
* The actual auto-differentiable number directional derivative type
*/
- using derivative_type = typename std::conditional<
+ using derivative_type = std::conditional_t<
is_real_valued,
typename internal::ADNumberInfoFromEnum<
typename internal::RemoveComplexWrapper<ScalarType>::type,
ADNumberTypeCode>::derivative_type,
std::complex<typename internal::ADNumberInfoFromEnum<
typename internal::RemoveComplexWrapper<ScalarType>::type,
- ADNumberTypeCode>::derivative_type>>::type;
+ ADNumberTypeCode>::derivative_type>>;
/**
{
static const bool is_supported = true;
- using ReturnType = typename std::conditional<
- std::is_same_v<ReturnType_, std::complex<float>>,
- std::complex<float>,
- std::complex<double>>::type;
+ using ReturnType =
+ std::conditional_t<std::is_same_v<ReturnType_, std::complex<float>>,
+ std::complex<float>,
+ std::complex<double>>;
};
ReturnType_>::is_supported>>
{
using ReturnType =
- typename std::conditional<!boost::is_complex<ReturnType_>::value,
- double,
- std::complex<double>>::type;
- using OptimizerType = typename std::conditional<
- !boost::is_complex<ReturnType_>::value,
- SymEngine::LambdaRealDoubleVisitor,
- SymEngine::LambdaComplexDoubleVisitor>::type;
+ std::conditional_t<!boost::is_complex<ReturnType_>::value,
+ double,
+ std::complex<double>>;
+ using OptimizerType =
+ std::conditional_t<!boost::is_complex<ReturnType_>::value,
+ SymEngine::LambdaRealDoubleVisitor,
+ SymEngine::LambdaComplexDoubleVisitor>;
/**
using ReturnType = typename std::
conditional<std::is_same_v<ReturnType_, float>, float, double>::type;
using OptimizerType =
- typename std::conditional<std::is_same_v<ReturnType_, float>,
- SymEngine::LLVMFloatVisitor,
- SymEngine::LLVMDoubleVisitor>::type;
+ std::conditional_t<std::is_same_v<ReturnType_, float>,
+ SymEngine::LLVMFloatVisitor,
+ SymEngine::LLVMDoubleVisitor>;
/**
* A flag to indicate if the ReturnType is supported by a
* number.
*/
using value_type =
- typename std::conditional<Constness,
- const typename BlockVectorType::value_type,
- typename BlockVectorType::value_type>::type;
+ std::conditional_t<Constness,
+ const typename BlockVectorType::value_type,
+ typename BlockVectorType::value_type>;
/**
* Declare some aliases that are standard for iterators and are used
using reference = typename BlockVectorType::reference;
using pointer = value_type *;
- using dereference_type = typename std::conditional<
- Constness,
- value_type,
- typename BlockVectorType::BlockType::reference>::type;
+ using dereference_type =
+ std::conditional_t<Constness,
+ value_type,
+ typename BlockVectorType::BlockType::reference>;
/**
* Typedef the type of the block vector (which differs in constness,
* depending on the second template parameter).
*/
- using BlockVector = typename std::
- conditional<Constness, const BlockVectorType, BlockVectorType>::type;
+ using BlockVector =
+ std::conditional_t<Constness, const BlockVectorType, BlockVectorType>;
/**
* Construct an iterator from a vector to which we point and the global
Domain>::reinit_domain_vector(operator_exemplar, v, omit_zeroing_entries);
};
- typename std::conditional<
+ std::conditional_t<
has_vmult_add_and_Tvmult_add<Range, Domain, Matrix>::type::value,
MatrixInterfaceWithVmultAdd<Range, Domain, Payload>,
- MatrixInterfaceWithoutVmultAdd<Range, Domain, Payload>>::type()
+ MatrixInterfaceWithoutVmultAdd<Range, Domain, Payload>>()
.
operator()(return_op, matrix);
// Initialize the payload based on the LinearOperator exemplar
auto return_op = operator_exemplar;
- typename std::conditional<
+ std::conditional_t<
has_vmult_add_and_Tvmult_add<Range, Domain, Matrix>::type::value,
MatrixInterfaceWithVmultAdd<Range, Domain, Payload>,
- MatrixInterfaceWithoutVmultAdd<Range, Domain, Payload>>::type()
+ MatrixInterfaceWithoutVmultAdd<Range, Domain, Payload>>()
.
operator()(return_op, matrix);
* analogy to standard functions.
*/
void
- swap(VectorBase &v);
+ swap(VectorBase &v) noexcept;
/**
* Conversion operator to gain access to the underlying PETSc type. If you
* @relatesalso PETScWrappers::VectorBase
*/
inline void
- swap(VectorBase &u, VectorBase &v)
+ swap(VectorBase &u, VectorBase &v) noexcept
{
u.swap(v);
}
template <int dim, int spacedim>
void
- Patch<dim, spacedim>::swap(Patch<dim, spacedim> &other_patch)
+ Patch<dim, spacedim>::swap(Patch<dim, spacedim> &other_patch) noexcept
{
std::swap(vertices, other_patch.vertices);
std::swap(neighbors, other_patch.neighbors);
template <int spacedim>
void
- Patch<0, spacedim>::swap(Patch<0, spacedim> &other_patch)
+ Patch<0, spacedim>::swap(Patch<0, spacedim> &other_patch) noexcept
{
std::swap(vertices, other_patch.vertices);
std::swap(patch_index, other_patch.patch_index);
template <int dim>
-typename std::conditional<dim == 1,
- std::array<Quadrature<1>, dim>,
- const std::array<Quadrature<1>, dim> &>::type
+typename std::conditional_t<dim == 1,
+ std::array<Quadrature<1>, dim>,
+ const std::array<Quadrature<1>, dim> &>
Quadrature<dim>::get_tensor_basis() const
{
Assert(this->is_tensor_product_flag == true,
void
- VectorBase::swap(VectorBase &v)
+ VectorBase::swap(VectorBase &v) noexcept
{
std::swap(this->vector, v.vector);
std::swap(this->ghosted, v.ghosted);