зеркало из https://github.com/mozilla/pjs.git
Back out c0e237b26fe2 because it's folded. (r=#jsapi)
This commit is contained in:
Родитель
4a57493320
Коммит
e4eec1c584
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -118,34 +118,10 @@ class AutoNamespaceArray : protected AutoGCRooter {
|
|||
JSXMLArray<JSObject> array;
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
class AutoPtr
|
||||
{
|
||||
JSContext *cx;
|
||||
T *value;
|
||||
|
||||
AutoPtr(const AutoPtr &other) MOZ_DELETE;
|
||||
|
||||
public:
|
||||
explicit AutoPtr(JSContext *cx) : cx(cx), value(NULL) {}
|
||||
~AutoPtr() {
|
||||
cx->delete_<T>(value);
|
||||
}
|
||||
|
||||
void operator=(T *ptr) { value = ptr; }
|
||||
|
||||
typedef void ***** ConvertibleToBool;
|
||||
operator ConvertibleToBool() const { return (ConvertibleToBool) value; }
|
||||
|
||||
const T *operator->() const { return value; }
|
||||
T *operator->() { return value; }
|
||||
|
||||
T *get() { return value; }
|
||||
};
|
||||
|
||||
#ifdef DEBUG
|
||||
class CompartmentChecker
|
||||
{
|
||||
private:
|
||||
JSContext *context;
|
||||
JSCompartment *compartment;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче