ENH: change refCount (internal) from count() to use_count()

- allows unambiguous of count() for other classes.
  Naming as per std::shared_ptr.

STYLE: qualify use_count() and unique() methods with the refCount base

- clearer/consistent meaning
This commit is contained in:
Mark Olesen
2023-02-27 15:33:03 +01:00
parent 00f499d714
commit 0ab0ecb541
4 changed files with 13 additions and 13 deletions

View File

@ -41,7 +41,7 @@ void printInfo(const tmp<T>& item, const bool verbose = false)
<< " movable:" << Switch(item.movable()); << " movable:" << Switch(item.movable());
if (item) if (item)
{ {
Info<< " refCount:" << item->count(); Info<< " refCount:" << item->use_count();
} }
Info<< " move-constructible:" Info<< " move-constructible:"

View File

@ -276,7 +276,7 @@ inline void Foam::token::reset()
case tokenType::COMPOUND: case tokenType::COMPOUND:
{ {
if (data_.compoundPtr->unique()) if (data_.compoundPtr->refCount::unique())
{ {
delete data_.compoundPtr; delete data_.compoundPtr;
} }

View File

@ -6,7 +6,7 @@
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2018 OpenCFD Ltd. Copyright (C) 2018-2023 OpenCFD Ltd.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -72,7 +72,7 @@ public:
// Member Functions // Member Functions
//- Return the current reference count //- Return the current reference count
int count() const noexcept int use_count() const noexcept
{ {
return count_; return count_;
} }

View File

@ -6,7 +6,7 @@
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2017 OpenFOAM Foundation Copyright (C) 2011-2017 OpenFOAM Foundation
Copyright (C) 2018-2022 OpenCFD Ltd. Copyright (C) 2018-2023 OpenCFD Ltd.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -34,9 +34,9 @@ License
template<class T> template<class T>
inline void Foam::tmp<T>::incrCount() inline void Foam::tmp<T>::incrCount()
{ {
ptr_->operator++(); ptr_->refCount::operator++();
if (ptr_->count() > 1) if (ptr_->refCount::use_count() > 1)
{ {
FatalErrorInFunction FatalErrorInFunction
<< "Attempt to create more than 2 tmp's referring to the same" << "Attempt to create more than 2 tmp's referring to the same"
@ -79,7 +79,7 @@ inline Foam::tmp<T>::tmp(T* p)
ptr_(p), ptr_(p),
type_(PTR) type_(PTR)
{ {
if (ptr_ && !ptr_->unique()) if (ptr_ && !ptr_->refCount::unique())
{ {
FatalErrorInFunction FatalErrorInFunction
<< "Attempted construction of a " << "Attempted construction of a "
@ -195,7 +195,7 @@ inline Foam::tmp<T>::~tmp() noexcept
template<class T> template<class T>
inline bool Foam::tmp<T>::movable() const noexcept inline bool Foam::tmp<T>::movable() const noexcept
{ {
return (is_pointer() && ptr_ && ptr_->unique()); return (is_pointer() && ptr_ && ptr_->refCount::unique());
} }
@ -246,7 +246,7 @@ inline T* Foam::tmp<T>::ptr() const
if (is_pointer()) if (is_pointer())
{ {
if (!ptr_->unique()) if (!ptr_->refCount::unique())
{ {
FatalErrorInFunction FatalErrorInFunction
<< "Attempt to acquire pointer to object referred to" << "Attempt to acquire pointer to object referred to"
@ -271,13 +271,13 @@ inline void Foam::tmp<T>::clear() const noexcept
{ {
if (is_pointer() && ptr_) if (is_pointer() && ptr_)
{ {
if (ptr_->unique()) if (ptr_->refCount::unique())
{ {
delete ptr_; delete ptr_;
} }
else else
{ {
ptr_->operator--(); ptr_->refCount::operator--();
} }
ptr_ = nullptr; ptr_ = nullptr;
} }
@ -479,7 +479,7 @@ inline void Foam::tmp<T>::operator=(T* p)
<< this->typeName() << this->typeName()
<< abort(FatalError); << abort(FatalError);
} }
else if (!p->unique()) else if (!p->refCount::unique())
{ {
FatalErrorInFunction FatalErrorInFunction
<< "Attempted assignment of a " << "Attempted assignment of a "