43requires(
const E e,
unsigned int codim)
45 requires E::mydimension == (E::dimension - E::codimension);
46 { e.level() } -> std::convertible_to<int>;
47 { e.partitionType() } -> std::same_as<Dune::PartitionType>;
48 { e.geometry() } -> std::same_as<typename E::Geometry>;
49 { e.type() } -> std::same_as<Dune::GeometryType>;
50 { e.subEntities(codim) } -> std::convertible_to<unsigned int>;
51 { e.seed() } -> std::same_as<typename E::EntitySeed>;
79requires(
const E e,
int maxLevel)
81 requires (E::codimension == 0);
82 { e.father() } -> std::same_as<E>;
83 { e.hasFather() } -> std::convertible_to<bool>;
84 { e.isLeaf() } -> std::convertible_to<bool>;
85 { e.isRegular() } -> std::convertible_to<bool>;
86 { e.geometryInFather() } -> std::same_as<typename E::LocalGeometry>;
87 { e.hbegin(maxLevel) } -> std::same_as<typename E::HierarchicIterator>;
88 { e.hend(maxLevel) } -> std::same_as<typename E::HierarchicIterator>;
89 { e.isNew() } -> std::convertible_to<bool>;
90 { e.mightVanish() } -> std::convertible_to<bool>;
91 { e.hasBoundaryIntersections() } -> std::convertible_to<bool>;
93 requires std::same_as<E, typename E::template Codim<0>::Entity>;
95Impl::EntityCodimExtended<E,0> &&
96requires (index_constant<1> from, index_constant<E::dimension+1> to) {
97 Impl::entityAllCodimsExtended<E>(range(from, to).to_integer_sequence());