MCPcopy Create free account
hub / github.com/ARM-software/ComputeLibrary / polymorphic_cast_unique_ptr

Function polymorphic_cast_unique_ptr

support/Cast.h:87–95  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

85 */
86template <typename Target, typename Source, typename Deleter>
87std::unique_ptr<Target, Deleter> polymorphic_cast_unique_ptr(std::unique_ptr<Source, Deleter> &&v)
88{
89 if (dynamic_cast<Target *>(v.get()) == nullptr)
90 {
91 ARM_COMPUTE_THROW(std::bad_cast());
92 }
93 auto r = static_cast<Target *>(v.release());
94 return std::unique_ptr<Target, Deleter>(r, std::move(v.get_deleter()));
95}
96
97/** Polymorphic down cast between two unique pointer types
98 *

Callers

nothing calls this directly

Calls 2

getMethod · 0.45
releaseMethod · 0.45

Tested by

no test coverage detected