diff options
author | romankoshelev <romankoshelev@yandex-team.com> | 2023-08-14 19:51:50 +0300 |
---|---|---|
committer | romankoshelev <romankoshelev@yandex-team.com> | 2023-08-15 01:24:11 +0300 |
commit | cfcd865e05c0d0525ea27d1e153a043b32a85138 (patch) | |
tree | 68d3b3b25271e8a4998505897a269ff7ce119b76 /contrib/libs/icu/common/cmemory.h | |
parent | ccb790c507bd5e8ffe2ef9886ce5ee0a7ce22a15 (diff) | |
download | ydb-cfcd865e05c0d0525ea27d1e153a043b32a85138.tar.gz |
Update ICU to 73.2
Diffstat (limited to 'contrib/libs/icu/common/cmemory.h')
-rw-r--r-- | contrib/libs/icu/common/cmemory.h | 94 |
1 files changed, 47 insertions, 47 deletions
diff --git a/contrib/libs/icu/common/cmemory.h b/contrib/libs/icu/common/cmemory.h index f03b7dcce6..3705c2dfd0 100644 --- a/contrib/libs/icu/common/cmemory.h +++ b/contrib/libs/icu/common/cmemory.h @@ -192,13 +192,13 @@ public: * Constructor takes ownership. * @param p simple pointer to an array of T items that is adopted */ - explicit LocalMemory(T *p=NULL) : LocalPointerBase<T>(p) {} + explicit LocalMemory(T *p=nullptr) : LocalPointerBase<T>(p) {} /** * Move constructor, leaves src with isNull(). * @param src source smart pointer */ - LocalMemory(LocalMemory<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) { - src.ptr=NULL; + LocalMemory(LocalMemory<T> &&src) noexcept : LocalPointerBase<T>(src.ptr) { + src.ptr=nullptr; } /** * Destructor deletes the memory it owns. @@ -212,17 +212,17 @@ public: * @param src source smart pointer * @return *this */ - LocalMemory<T> &operator=(LocalMemory<T> &&src) U_NOEXCEPT { + LocalMemory<T> &operator=(LocalMemory<T> &&src) noexcept { uprv_free(LocalPointerBase<T>::ptr); LocalPointerBase<T>::ptr=src.ptr; - src.ptr=NULL; + src.ptr=nullptr; return *this; } /** * Swap pointers. * @param other other smart pointer */ - void swap(LocalMemory<T> &other) U_NOEXCEPT { + void swap(LocalMemory<T> &other) noexcept { T *temp=LocalPointerBase<T>::ptr; LocalPointerBase<T>::ptr=other.ptr; other.ptr=temp; @@ -232,7 +232,7 @@ public: * @param p1 will get p2's pointer * @param p2 will get p1's pointer */ - friend inline void swap(LocalMemory<T> &p1, LocalMemory<T> &p2) U_NOEXCEPT { + friend inline void swap(LocalMemory<T> &p1, LocalMemory<T> &p2) noexcept { p1.swap(p2); } /** @@ -248,21 +248,21 @@ public: * Deletes the array it owns, allocates a new one and reset its bytes to 0. * Returns the new array pointer. * If the allocation fails, then the current array is unchanged and - * this method returns NULL. + * this method returns nullptr. * @param newCapacity must be >0 - * @return the allocated array pointer, or NULL if the allocation failed + * @return the allocated array pointer, or nullptr if the allocation failed */ inline T *allocateInsteadAndReset(int32_t newCapacity=1); /** * Deletes the array it owns and allocates a new one, copying length T items. * Returns the new array pointer. * If the allocation fails, then the current array is unchanged and - * this method returns NULL. + * this method returns nullptr. * @param newCapacity must be >0 * @param length number of T items to be copied from the old array to the new one; * must be no more than the capacity of the old array, * which the caller must track because the LocalMemory does not track it - * @return the allocated array pointer, or NULL if the allocation failed + * @return the allocated array pointer, or nullptr if the allocation failed */ inline T *allocateInsteadAndCopy(int32_t newCapacity=1, int32_t length=0); /** @@ -278,14 +278,14 @@ template<typename T> inline T *LocalMemory<T>::allocateInsteadAndReset(int32_t newCapacity) { if(newCapacity>0) { T *p=(T *)uprv_malloc(newCapacity*sizeof(T)); - if(p!=NULL) { + if(p!=nullptr) { uprv_memset(p, 0, newCapacity*sizeof(T)); uprv_free(LocalPointerBase<T>::ptr); LocalPointerBase<T>::ptr=p; } return p; } else { - return NULL; + return nullptr; } } @@ -294,7 +294,7 @@ template<typename T> inline T *LocalMemory<T>::allocateInsteadAndCopy(int32_t newCapacity, int32_t length) { if(newCapacity>0) { T *p=(T *)uprv_malloc(newCapacity*sizeof(T)); - if(p!=NULL) { + if(p!=nullptr) { if(length>0) { if(length>newCapacity) { length=newCapacity; @@ -306,7 +306,7 @@ inline T *LocalMemory<T>::allocateInsteadAndCopy(int32_t newCapacity, int32_t le } return p; } else { - return NULL; + return nullptr; } } @@ -332,10 +332,10 @@ template<typename T, int32_t stackCapacity> class MaybeStackArray { public: // No heap allocation. Use only on the stack. - static void* U_EXPORT2 operator new(size_t) U_NOEXCEPT = delete; - static void* U_EXPORT2 operator new[](size_t) U_NOEXCEPT = delete; + static void* U_EXPORT2 operator new(size_t) noexcept = delete; + static void* U_EXPORT2 operator new[](size_t) noexcept = delete; #if U_HAVE_PLACEMENT_NEW - static void* U_EXPORT2 operator new(size_t, void*) U_NOEXCEPT = delete; + static void* U_EXPORT2 operator new(size_t, void*) noexcept = delete; #endif /** @@ -364,11 +364,11 @@ public: /** * Move constructor: transfers ownership or copies the stack array. */ - MaybeStackArray(MaybeStackArray<T, stackCapacity> &&src) U_NOEXCEPT; + MaybeStackArray(MaybeStackArray<T, stackCapacity> &&src) noexcept; /** * Move assignment: transfers ownership or copies the stack array. */ - MaybeStackArray<T, stackCapacity> &operator=(MaybeStackArray<T, stackCapacity> &&src) U_NOEXCEPT; + MaybeStackArray<T, stackCapacity> &operator=(MaybeStackArray<T, stackCapacity> &&src) noexcept; /** * Returns the array capacity (number of T items). * @return array capacity @@ -403,11 +403,11 @@ public: /** * Deletes the array (if owned) and aliases another one, no transfer of ownership. * If the arguments are illegal, then the current array is unchanged. - * @param otherArray must not be NULL + * @param otherArray must not be nullptr * @param otherCapacity must be >0 */ void aliasInstead(T *otherArray, int32_t otherCapacity) { - if(otherArray!=NULL && otherCapacity>0) { + if(otherArray!=nullptr && otherCapacity>0) { releaseArray(); ptr=otherArray; capacity=otherCapacity; @@ -418,17 +418,17 @@ public: * Deletes the array (if owned) and allocates a new one, copying length T items. * Returns the new array pointer. * If the allocation fails, then the current array is unchanged and - * this method returns NULL. + * this method returns nullptr. * @param newCapacity can be less than or greater than the current capacity; * must be >0 * @param length number of T items to be copied from the old array to the new one - * @return the allocated array pointer, or NULL if the allocation failed + * @return the allocated array pointer, or nullptr if the allocation failed */ inline T *resize(int32_t newCapacity, int32_t length=0); /** * Gives up ownership of the array if owned, or else clones it, * copying length T items; resets itself to the internal stack array. - * Returns NULL if the allocation failed. + * Returns nullptr if the allocation failed. * @param length number of T items to copy when cloning, * and capacity of the clone when cloning * @param resultCapacity will be set to the returned array's capacity (output-only) @@ -443,7 +443,7 @@ protected: if (U_FAILURE(status)) { return; } - if (this->resize(src.capacity, 0) == NULL) { + if (this->resize(src.capacity, 0) == nullptr) { status = U_MEMORY_ALLOCATION_ERROR; return; } @@ -475,7 +475,7 @@ private: template<typename T, int32_t stackCapacity> icu::MaybeStackArray<T, stackCapacity>::MaybeStackArray( - MaybeStackArray <T, stackCapacity>&& src) U_NOEXCEPT + MaybeStackArray <T, stackCapacity>&& src) noexcept : ptr(src.ptr), capacity(src.capacity), needToRelease(src.needToRelease) { if (src.ptr == src.stackArray) { ptr = stackArray; @@ -487,7 +487,7 @@ icu::MaybeStackArray<T, stackCapacity>::MaybeStackArray( template<typename T, int32_t stackCapacity> inline MaybeStackArray <T, stackCapacity>& -MaybeStackArray<T, stackCapacity>::operator=(MaybeStackArray <T, stackCapacity>&& src) U_NOEXCEPT { +MaybeStackArray<T, stackCapacity>::operator=(MaybeStackArray <T, stackCapacity>&& src) noexcept { releaseArray(); // in case this instance had its own memory allocated capacity = src.capacity; needToRelease = src.needToRelease; @@ -508,7 +508,7 @@ inline T *MaybeStackArray<T, stackCapacity>::resize(int32_t newCapacity, int32_t ::fprintf(::stderr, "MaybeStackArray (resize) alloc %d * %lu\n", newCapacity, sizeof(T)); #endif T *p=(T *)uprv_malloc(newCapacity*sizeof(T)); - if(p!=NULL) { + if(p!=nullptr) { if(length>0) { if(length>capacity) { length=capacity; @@ -525,7 +525,7 @@ inline T *MaybeStackArray<T, stackCapacity>::resize(int32_t newCapacity, int32_t } return p; } else { - return NULL; + return nullptr; } } @@ -535,7 +535,7 @@ inline T *MaybeStackArray<T, stackCapacity>::orphanOrClone(int32_t length, int32 if(needToRelease) { p=ptr; } else if(length<=0) { - return NULL; + return nullptr; } else { if(length>capacity) { length=capacity; @@ -544,8 +544,8 @@ inline T *MaybeStackArray<T, stackCapacity>::orphanOrClone(int32_t length, int32 #if U_DEBUG && defined(UPRV_MALLOC_COUNT) ::fprintf(::stderr,"MaybeStacArray (orphan) alloc %d * %lu\n", length,sizeof(T)); #endif - if(p==NULL) { - return NULL; + if(p==nullptr) { + return nullptr; } uprv_memcpy(p, ptr, (size_t)length*sizeof(T)); } @@ -568,10 +568,10 @@ template<typename H, typename T, int32_t stackCapacity> class MaybeStackHeaderAndArray { public: // No heap allocation. Use only on the stack. - static void* U_EXPORT2 operator new(size_t) U_NOEXCEPT = delete; - static void* U_EXPORT2 operator new[](size_t) U_NOEXCEPT = delete; + static void* U_EXPORT2 operator new(size_t) noexcept = delete; + static void* U_EXPORT2 operator new[](size_t) noexcept = delete; #if U_HAVE_PLACEMENT_NEW - static void* U_EXPORT2 operator new(size_t, void*) U_NOEXCEPT = delete; + static void* U_EXPORT2 operator new(size_t, void*) noexcept = delete; #endif /** @@ -618,11 +618,11 @@ public: /** * Deletes the memory block (if owned) and aliases another one, no transfer of ownership. * If the arguments are illegal, then the current memory is unchanged. - * @param otherArray must not be NULL + * @param otherArray must not be nullptr * @param otherCapacity must be >0 */ void aliasInstead(H *otherMemory, int32_t otherCapacity) { - if(otherMemory!=NULL && otherCapacity>0) { + if(otherMemory!=nullptr && otherCapacity>0) { releaseMemory(); ptr=otherMemory; capacity=otherCapacity; @@ -634,17 +634,17 @@ public: * copying the header and length T array items. * Returns the new header pointer. * If the allocation fails, then the current memory is unchanged and - * this method returns NULL. + * this method returns nullptr. * @param newCapacity can be less than or greater than the current capacity; * must be >0 * @param length number of T items to be copied from the old array to the new one - * @return the allocated pointer, or NULL if the allocation failed + * @return the allocated pointer, or nullptr if the allocation failed */ inline H *resize(int32_t newCapacity, int32_t length=0); /** * Gives up ownership of the memory if owned, or else clones it, * copying the header and length T array items; resets itself to the internal memory. - * Returns NULL if the allocation failed. + * Returns nullptr if the allocation failed. * @param length number of T items to copy when cloning, * and array capacity of the clone when cloning * @param resultCapacity will be set to the returned array's capacity (output-only) @@ -680,7 +680,7 @@ inline H *MaybeStackHeaderAndArray<H, T, stackCapacity>::resize(int32_t newCapac ::fprintf(::stderr,"MaybeStackHeaderAndArray alloc %d + %d * %ul\n", sizeof(H),newCapacity,sizeof(T)); #endif H *p=(H *)uprv_malloc(sizeof(H)+newCapacity*sizeof(T)); - if(p!=NULL) { + if(p!=nullptr) { if(length<0) { length=0; } else if(length>0) { @@ -699,7 +699,7 @@ inline H *MaybeStackHeaderAndArray<H, T, stackCapacity>::resize(int32_t newCapac } return p; } else { - return NULL; + return nullptr; } } @@ -719,8 +719,8 @@ inline H *MaybeStackHeaderAndArray<H, T, stackCapacity>::orphanOrClone(int32_t l ::fprintf(::stderr,"MaybeStackHeaderAndArray (orphan) alloc %ul + %d * %lu\n", sizeof(H),length,sizeof(T)); #endif p=(H *)uprv_malloc(sizeof(H)+length*sizeof(T)); - if(p==NULL) { - return NULL; + if(p==nullptr) { + return nullptr; } uprv_memcpy(p, ptr, sizeof(H)+(size_t)length*sizeof(T)); } @@ -768,12 +768,12 @@ public: MemoryPool(const MemoryPool&) = delete; MemoryPool& operator=(const MemoryPool&) = delete; - MemoryPool(MemoryPool&& other) U_NOEXCEPT : fCount(other.fCount), + MemoryPool(MemoryPool&& other) noexcept : fCount(other.fCount), fPool(std::move(other.fPool)) { other.fCount = 0; } - MemoryPool& operator=(MemoryPool&& other) U_NOEXCEPT { + MemoryPool& operator=(MemoryPool&& other) noexcept { // Since `this` may contain instances that need to be deleted, we can't // just throw them away and replace them with `other`. The normal way of // dealing with this in C++ is to swap `this` and `other`, rather than |