56 ConcreteObject, PolymorphicBase>::EnableAbstractPolymorphicObject;
58 std::unique_ptr<PolymorphicObject> create_default_impl(
59 std::shared_ptr<const Executor> exec)
const override
61 return std::unique_ptr<ConcreteObject>{
62 new ConcreteObject(exec, self()->get_communicator())};
72 std::unique_ptr<PolymorphicObject> other)
override
85 std::unique_ptr<PolymorphicObject> other)
override
94 ConcreteObject{self()->get_executor(), self()->get_communicator()};
99 GKO_ENABLE_SELF(ConcreteObject);
std::decay_t< T > * as(U *obj)
Performs polymorphic type conversion.
Definition utils_helper.hpp:307