Function SharedPtr.weak

Returns weak pointer (must have weak counter).

SharedPtr.WeakType weak() scope;

Examples

SharedPtr!long x = SharedPtr!long.make(123);
assert(x.useCount == 1);

auto wx = x.weak;   //weak pointer
assert(wx.expired == false);
assert(wx.lock.get == 123);
assert(wx.useCount == 1);

x = null;
assert(wx.expired == true);
assert(wx.useCount == 0);