57 ConcreteObject, PolymorphicBase>::EnableAbstractPolymorphicObject;
59 std::unique_ptr<PolymorphicObject> create_default_impl(
60 std::shared_ptr<const Executor> exec)
const override
62 return std::unique_ptr<ConcreteObject>{
63 new ConcreteObject(exec, self()->get_communicator())};
73 std::unique_ptr<PolymorphicObject> other)
override
86 std::unique_ptr<PolymorphicObject> other)
override
95 ConcreteObject{self()->get_executor(), self()->get_communicator()};
100 GKO_ENABLE_SELF(ConcreteObject);
std::decay_t< T > * as(U *obj)
Performs polymorphic type conversion.
Definition utils_helper.hpp:309