5namespace Stroika::Foundation::Database::Document::LocalDocumentDB {
12 inline LocalDocumentDB::Ptr::Ptr (
const Ptr& src)
16 inline LocalDocumentDB::Ptr::Ptr (
const shared_ptr<IRep>& src)
20 inline LocalDocumentDB::Ptr::Ptr (nullptr_t) noexcept
21 : inherited{
static_cast<shared_ptr<IRep>
> (
nullptr)}
24 inline LocalDocumentDB::Ptr& LocalDocumentDB::Ptr::operator= (
const Ptr& src)
26 inherited::operator= (src);
29 inline LocalDocumentDB::Ptr& LocalDocumentDB::Ptr::operator= (Ptr&& src)
noexcept
31 inherited::operator= (move (src));
34 inline LocalDocumentDB::IRep* LocalDocumentDB::Ptr::operator->() const noexcept
36 return Debug::UncheckedDynamicPointerCast<IRep> (*this).get ();
38 inline void LocalDocumentDB::Ptr::Flush ()
const
40 Debug::UncheckedDynamicPointerCast<IRep> (*this)->Flush ();
std::shared_ptr< T > UncheckedDynamicPointerCast(const std::shared_ptr< T1 > &arg) noexcept
Produce the same result as dynamic_pointer_cast if the successful case (non-null) - with better perfo...