Function SharedPtr.weakCount

Returns the number of different SharedPtr.WeakType instances

ControlType.Weak weakCount(This)() const nothrow @nogc @property scope @safe;

Returns the number of different SharedPtr.WeakType instances (this included) managing the current object or 0 if there is no managed object.

Examples

SharedPtr!long x = null;
assert(x.useCount == 0);
assert(x.weakCount == 0);

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

auto w = x.weak();
assert(x.useCount == 1);
assert(x.weakCount == 1);