Ginkgo
Generated from pipelines/1554403166 branch based on develop. Ginkgo version 1.9.0
A numerical linear algebra library targeting many-core architectures
|
This mixin is used to enable a default PolymorphicObject::copy_from() implementation for objects that have implemented conversions between them. More...
#include <ginkgo/core/base/polymorphic_object.hpp>
Inherits gko::ConvertibleTo< ResultType >.
Public Types | |
using | result_type = ResultType |
Public Types inherited from gko::ConvertibleTo< ResultType > | |
using | result_type = ResultType |
Public Member Functions | |
void | convert_to (result_type *result) const override |
Converts the implementer to an object of type result_type. More... | |
void | move_to (result_type *result) override |
Converts the implementer to an object of type result_type by moving data from this object. More... | |
Public Member Functions inherited from gko::ConvertibleTo< ResultType > | |
void | convert_to (ptr_param< result_type > result) const |
void | move_to (ptr_param< result_type > result) |
This mixin is used to enable a default PolymorphicObject::copy_from() implementation for objects that have implemented conversions between them.
The requirement is that there is either a conversion constructor from ConcreteType
in ResultType
, or a conversion operator to ResultType
in ConcreteType
.
ConcreteType | the concrete type from which the copy_from is being enabled [CRTP parameter] |
ResultType | the type to which copy_from is being enabled |
|
inlineoverridevirtual |
Converts the implementer to an object of type result_type.
result | the object used to store the result of the conversion |
Implements gko::ConvertibleTo< ResultType >.
|
inlineoverridevirtual |
Converts the implementer to an object of type result_type by moving data from this object.
This method is used when the implementer is a temporary object, and move semantics can be used.
result | the object used to emplace the result of the conversion |
Implements gko::ConvertibleTo< ResultType >.