Skip to content

Commit

Permalink
Add a 'requires' clause to class DoFHandler.
Browse files Browse the repository at this point in the history
  • Loading branch information
bangerth committed Mar 1, 2023
1 parent 9d8fb00 commit 956990f
Show file tree
Hide file tree
Showing 27 changed files with 35 additions and 5 deletions.
2 changes: 2 additions & 0 deletions include/deal.II/dofs/block_info.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

#include <deal.II/base/memory_consumption.h>
#include <deal.II/base/subscriptor.h>
#include <deal.II/base/template_constraints.h>

#include <deal.II/lac/block_indices.h>

Expand All @@ -30,6 +31,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declarations
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
4 changes: 3 additions & 1 deletion include/deal.II/dofs/dof_accessor.h
Original file line number Diff line number Diff line change
Expand Up @@ -739,6 +739,7 @@ class DoFAccessor : public dealii::internal::DoFAccessorImplementation::
// Make the DoFHandler class a friend so that it can call the set_xxx()
// functions.
template <int, int>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
friend class DoFHandler;

friend struct dealii::internal::DoFHandlerImplementation::Policy::
Expand Down Expand Up @@ -1208,7 +1209,8 @@ class DoFAccessor<0, 1, spacedim, level_dof_access>

// Make the DoFHandler class a friend so that it can call the set_xxx()
// functions.
template <int, int>
template <int dim1, int spacedim1>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim1, spacedim1>))
friend class DoFHandler;

friend struct dealii::internal::DoFHandlerImplementation::Policy::
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/dofs/dof_handler.h
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,7 @@ namespace parallel
* @ingroup dofs
*/
template <int dim, int spacedim = dim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler : public Subscriptor
{
using ActiveSelector =
Expand Down
3 changes: 2 additions & 1 deletion include/deal.II/dofs/dof_handler_policy.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@ DEAL_II_NAMESPACE_OPEN

// Forward declaration
#ifndef DOXYGEN
template <int, int>
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/dofs/dof_iterator_selector.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ template <int dim, int spacedim, bool lda>
class DoFCellAccessor;

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;

template <typename Accessor>
Expand Down
4 changes: 3 additions & 1 deletion include/deal.II/dofs/dof_objects.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,16 @@
#include <deal.II/base/config.h>

#include <deal.II/base/exceptions.h>
#include <deal.II/base/template_constraints.h>

#include <vector>

DEAL_II_NAMESPACE_OPEN

// Forward declarations
#ifndef DOXYGEN
template <int, int>
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/fe/fe_tools.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ class Quadrature;
template <int dim, int spacedim>
class FiniteElement;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim>
class FiniteElementData;
Expand Down
3 changes: 2 additions & 1 deletion include/deal.II/fe/mapping_q_cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ DEAL_II_NAMESPACE_OPEN

// Forward declarations
#ifndef DOXYGEN
template <int, int>
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/grid/tria_accessor.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ namespace parallel
}

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, int spacedim, bool lda>
class DoFCellAccessor;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/hp/refinement.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ template <typename Number>
class Vector;

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/multigrid/mg_constrained_dofs.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declaration
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/multigrid/mg_tools.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declarations
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
class MGConstrainedDoFs;
#endif
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/multigrid/mg_transfer_block.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declaration
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/multigrid/mg_transfer_component.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declaration
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/data_out_stack.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ DEAL_II_NAMESPACE_OPEN
// Forward declaration
#ifndef DOXYGEN
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
#endif

Expand Down
3 changes: 2 additions & 1 deletion include/deal.II/numerics/error_estimator.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ DEAL_II_NAMESPACE_OPEN

// Forward declarations
#ifndef DOXYGEN
template <int, int>
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int, int>
class Mapping;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/matrix_creator.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ class SparseMatrix;
template <int dim, int spacedim>
class Mapping;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;

namespace hp
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/matrix_tools.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ class BlockVector;
template <int dim, int spacedim>
class Mapping;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;

namespace hp
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/smoothness_estimator.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ template <typename Number>
class Vector;

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;

namespace FESeries
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_boundary.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ DEAL_II_NAMESPACE_OPEN
template <typename number>
class AffineConstraints;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
DEAL_II_NAMESPACE_OPEN

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_interpolate.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ DEAL_II_NAMESPACE_OPEN
template <typename number>
class AffineConstraints;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <typename number>
class FullMatrix;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_mean_value.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ DEAL_II_NAMESPACE_OPEN
#ifndef DOXYGEN
// forward declarations
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, int spacedim>
class Mapping;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_point_gradient.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
DEAL_II_NAMESPACE_OPEN

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_point_value.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
DEAL_II_NAMESPACE_OPEN

template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_project.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ DEAL_II_NAMESPACE_OPEN
template <typename number>
class AffineConstraints;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down
1 change: 1 addition & 0 deletions include/deal.II/numerics/vector_tools_rhs.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ DEAL_II_NAMESPACE_OPEN
template <typename number>
class AffineConstraints;
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
class DoFHandler;
template <int dim, typename Number>
class Function;
Expand Down

0 comments on commit 956990f

Please sign in to comment.