Elements 6.3.3
A C++ base framework for the Euclid Software.
Loading...
Searching...
No Matches
FuncPtrCast.h
Go to the documentation of this file.
1
21
26
27#ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_FUNCPTRCAST_H_
28#define ELEMENTSKERNEL_ELEMENTSKERNEL_FUNCPTRCAST_H_
29
30#include <cstring> // for memcpy
31#include <type_traits> // for is_pointer
32
33namespace Elements {
34namespace System {
35
49template <typename DESTPTR, typename SRC>
50constexpr DESTPTR FuncPtrCast(SRC* const src_p) noexcept;
51
52} // namespace System
53} // namespace Elements
54
55#define ELEMENTSKERNEL_ELEMENTSKERNEL_FUNCPTRCAST_IMPL_
56#include "ElementsKernel/_impl/FuncPtrCast.tpp" // IWYU pragma: export
57#undef ELEMENTSKERNEL_ELEMENTSKERNEL_FUNCPTRCAST_IMPL_
58
59#endif // ELEMENTSKERNEL_ELEMENTSKERNEL_FUNCPTRCAST_H_
60
implementation of the templates declared in ElementsKernel/Auxiliary.h
constexpr DESTPTR FuncPtrCast(SRC *const src_p) noexcept
Cast from void * to function pointer.