mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-26 06:11:37 +00:00
e368dc9c85
This patch was generated by a script. Here's the source of the script for future reference: function convert() { echo "Converting $1 to $2..." find . ! -wholename "*nsprpub*" \ ! -wholename "*security/nss*" \ ! -wholename "*/.hg*" \ ! -wholename "obj-ff-dbg*" \ ! -name nsXPCOMCID.h \ ! -name prtypes.h \ -type f \ \( -iname "*.cpp" \ -o -iname "*.h" \ -o -iname "*.c" \ -o -iname "*.cc" \ -o -iname "*.idl" \ -o -iname "*.ipdl" \ -o -iname "*.ipdlh" \ -o -iname "*.mm" \) | \ xargs -n 1 sed -i -e "s/\b$1\b/$2/g" } convert PRInt8 int8_t convert PRUint8 uint8_t convert PRInt16 int16_t convert PRUint16 uint16_t convert PRInt32 int32_t convert PRUint32 uint32_t convert PRInt64 int64_t convert PRUint64 uint64_t convert PRIntn int convert PRUintn unsigned convert PRSize size_t convert PROffset32 int32_t convert PROffset64 int64_t convert PRPtrdiff ptrdiff_t convert PRFloat64 double
68 lines
1.4 KiB
C++
68 lines
1.4 KiB
C++
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef nsAtomicRefcnt_h__
|
|
#define nsAtomicRefcnt_h__
|
|
|
|
#include "nscore.h"
|
|
#include "pratom.h"
|
|
|
|
class nsAutoRefCnt;
|
|
|
|
// This header defines functions for modifying refcounts which wrap the
|
|
// PR_ATOMIC_* macros.
|
|
|
|
#if defined(XP_WIN)
|
|
|
|
#if PR_BYTES_PER_LONG == 4
|
|
typedef volatile long nsAtomicRefcnt;
|
|
#else
|
|
#error "Windows should have 4 bytes per long."
|
|
#endif
|
|
|
|
#else /* !defined(XP_WIN) */
|
|
|
|
typedef int32_t nsAtomicRefcnt;
|
|
|
|
#endif
|
|
|
|
inline int32_t
|
|
NS_AtomicIncrementRefcnt(int32_t &refcnt)
|
|
{
|
|
return PR_ATOMIC_INCREMENT(&refcnt);
|
|
}
|
|
|
|
inline nsrefcnt
|
|
NS_AtomicIncrementRefcnt(nsrefcnt &refcnt)
|
|
{
|
|
return (nsrefcnt) PR_ATOMIC_INCREMENT((nsAtomicRefcnt*)&refcnt);
|
|
}
|
|
|
|
inline nsrefcnt
|
|
NS_AtomicIncrementRefcnt(nsAutoRefCnt &refcnt)
|
|
{
|
|
// This cast is safe since nsAtomicRefCnt contains just one member, its refcount.
|
|
return (nsrefcnt) PR_ATOMIC_INCREMENT((nsAtomicRefcnt*)&refcnt);
|
|
}
|
|
|
|
inline nsrefcnt
|
|
NS_AtomicDecrementRefcnt(nsrefcnt &refcnt)
|
|
{
|
|
return (nsrefcnt) PR_ATOMIC_DECREMENT((nsAtomicRefcnt*)&refcnt);
|
|
}
|
|
|
|
inline nsrefcnt
|
|
NS_AtomicDecrementRefcnt(nsAutoRefCnt &refcnt)
|
|
{
|
|
return (nsrefcnt) PR_ATOMIC_DECREMENT((nsAtomicRefcnt*)&refcnt);
|
|
}
|
|
|
|
inline int32_t
|
|
NS_AtomicDecrementRefcnt(int32_t &refcnt)
|
|
{
|
|
return PR_ATOMIC_DECREMENT(&refcnt);
|
|
}
|
|
|
|
#endif
|