|
dune-localfunctions 2.10
|
Loading...
Searching...
No Matches
localfiniteelementvariant.hh
Go to the documentation of this file.
3// SPDX-FileCopyrightInfo: Copyright © DUNE Project contributors, see file LICENSE.md in module root
35 auto visitorWithFallback = overload([&](std::monostate&) {}, [&](const std::monostate&) {}, visitor);
238 // In each LocalFooVariant we store a std::variant<std::monostate, const FooImpl*...>, i.e. a std::variant
239 // with the pointer to the Foo implementation unless LocalFiniteElementVariant stores a monostate. In this
241 using LocalBasis = Impl::LocalBasisVariant<typename Implementations::Traits::LocalBasisType...>;
242 using LocalCoefficients = Impl::LocalCoefficientsVariant<typename Implementations::Traits::LocalCoefficientsType...>;
243 using LocalInterpolation = Impl::LocalInterpolationVariant<typename Implementations::Traits::LocalInterpolationType...>;
269 using Traits = typename Dune::LocalFiniteElementTraits<LocalBasis, LocalCoefficients, LocalInterpolation>;
289 std::enable_if_t<std::disjunction<std::is_same<std::decay_t<Implementation>, Implementations>...>::value, int> = 0>
338 std::enable_if_t<std::disjunction<std::is_same<std::decay_t<Implementation>, Implementations>...>::value, int> = 0>
SLList< T, A > & operator=(const SLList< T, A > &other)
auto overload(F &&... f)
STL namespace.
Type erasure class for wrapping LocalFiniteElement classes.
Definition localfiniteelementvariant.hh:236
typename Dune::LocalFiniteElementTraits< LocalBasis, LocalCoefficients, LocalInterpolation > Traits
Export LocalFiniteElementTraits.
Definition localfiniteelementvariant.hh:269
const auto & variant() const
Provide access to underlying std::variant.
Definition localfiniteelementvariant.hh:398
unsigned int size() const
Number of shape functions.
Definition localfiniteelementvariant.hh:374
constexpr GeometryType type() const
Number of shape functions.
Definition localfiniteelementvariant.hh:382
LocalFiniteElementVariant(LocalFiniteElementVariant &&other)
Move constructor.
Definition localfiniteelementvariant.hh:308
LocalFiniteElementVariant & operator=(Implementation &&impl)
Assignment from implementation.
Definition localfiniteelementvariant.hh:339
const Traits::LocalBasisType & localBasis() const
Provide access to LocalBasis implementation of this LocalFiniteElement.
Definition localfiniteelementvariant.hh:350
LocalFiniteElementVariant & operator=(const LocalFiniteElementVariant &other)
Copy assignment.
Definition localfiniteelementvariant.hh:317
LocalFiniteElementVariant(const std::monostate &monostate)
Construct empty LocalFiniteElementVariant.
Definition localfiniteelementvariant.hh:279
LocalFiniteElementVariant(const LocalFiniteElementVariant &other)
Copy constructor.
Definition localfiniteelementvariant.hh:299
const Traits::LocalCoefficientsType & localCoefficients() const
Provide access to LocalCoefficients implementation of this LocalFiniteElement.
Definition localfiniteelementvariant.hh:358
LocalFiniteElementVariant(Implementation &&impl)
Construct LocalFiniteElementVariant.
Definition localfiniteelementvariant.hh:290
LocalFiniteElementVariant & operator=(LocalFiniteElementVariant &&other)
Move assignment.
Definition localfiniteelementvariant.hh:327
const Traits::LocalInterpolationType & localInterpolation() const
Provide access to LocalInterpolation implementation of this LocalFiniteElement.
Definition localfiniteelementvariant.hh:366
LocalFiniteElementVariant()=default
Construct empty LocalFiniteElementVariant.
T visit(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8