Compare commits
No commits in common. "main" and "readme-wip" have entirely different histories.
main
...
readme-wip
@ -119,11 +119,6 @@ public:
|
||||
other.ptr = nullptr;
|
||||
}
|
||||
|
||||
int use_count() const
|
||||
{
|
||||
return ptr ? ptr->rcp_count() : 0;
|
||||
}
|
||||
|
||||
void swap(rcp & other) noexcept
|
||||
{
|
||||
T * tmp = ptr;
|
||||
@ -237,10 +232,6 @@ rcp<T> rcp_dynamic_cast(rcp<U> && other)
|
||||
delete this; \
|
||||
} \
|
||||
} \
|
||||
int rcp_count() const \
|
||||
{ \
|
||||
return ref_count.load(std::memory_order_relaxed); \
|
||||
} \
|
||||
private: \
|
||||
mutable std::atomic<int> ref_count{0}; \
|
||||
rcp_managed(classname)
|
||||
|
||||
15
tests.cpp
15
tests.cpp
@ -314,20 +314,6 @@ protected:
|
||||
~Counter() { external_destruct++; }
|
||||
};
|
||||
|
||||
void test_use_count()
|
||||
{
|
||||
MyB a = MyB::create(1, 2);
|
||||
assert(a.use_count() == 1);
|
||||
{
|
||||
MyB b = a;
|
||||
assert(a.use_count() == 2);
|
||||
assert(b.use_count() == 2);
|
||||
}
|
||||
assert(a.use_count() == 1);
|
||||
MyB empty;
|
||||
assert(empty.use_count() == 0);
|
||||
}
|
||||
|
||||
void test_swap()
|
||||
{
|
||||
MyB a = MyB::create(1, 2);
|
||||
@ -382,7 +368,6 @@ int main(int argc, char * argv[])
|
||||
test_dynamic_cast_failure();
|
||||
test_dynamic_cast_move_success();
|
||||
test_dynamic_cast_move_failure();
|
||||
test_use_count();
|
||||
test_swap();
|
||||
test_hash();
|
||||
test_external_class();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user