30 #ifndef CEREAL_TYPES_BASE_CLASS_HPP_
31 #define CEREAL_TYPES_BASE_CLASS_HPP_
38 namespace base_class_detail
52 template <
class Base,
class Derived>
102 template<
class Derived>
104 base_ptr(const_cast<Base*>(static_cast<Base
const *>(derived)))
190 template<
class Derived>
192 base_ptr(const_cast<Base*>(static_cast<Base
const *>(derived)))
in certain simple scenarios. They should probably not be used if maximizing performance is the main o...
Definition: access.hpp:42
const GenericPointer< typename T::ValueType > T2 value
Definition: pointer.h:1282
Internal polymorphism support forward declarations.
static void bind()
Definition: base_class.hpp:55
Definition: base_class.hpp:45
static void bind()
Definition: base_class.hpp:46
Casts a derived class to its non-virtual base class in a way that safely supports abstract classes.
Definition: base_class.hpp:101
Base * base_ptr
Definition: base_class.hpp:110
base_class(Derived const *derived)
Definition: base_class.hpp:103
static PolymorphicCaster const * bind()
Performs registration (binding) between Base and Derived.
Definition: polymorphic_impl.hpp:450
Common base type for base class casting.
Definition: traits.hpp:1167
Casts a derived class to its virtual base class in a way that allows cereal to track inheritance.
Definition: base_class.hpp:189
Base * base_ptr
Definition: base_class.hpp:198
virtual_base_class(Derived const *derived)
Definition: base_class.hpp:191
Internal type trait support.
#define const
Definition: zconf.h:233