Chromium Code Reviews| Index: src/global-handles.h |
| diff --git a/src/global-handles.h b/src/global-handles.h |
| index 5a4ad13e2f59c3b8342a6b03328f2336f4bcb06f..2d4076db1a8270f0dd4843c1cdc70a69f79679b4 100644 |
| --- a/src/global-handles.h |
| +++ b/src/global-handles.h |
| @@ -128,9 +128,13 @@ class GlobalHandles { |
| // Creates a new global handle that is alive until Destroy is called. |
| Handle<Object> Create(Object* value); |
| + // Copy a global handle |
| + static Handle<Object> CopyGlobal(Object** location); |
| + |
| // Destroy a global handle. |
| static void Destroy(Object** location); |
| + typedef WeakCallbackData<v8::Value, void>::Callback WeakCallback; |
| typedef WeakReferenceCallbacks<v8::Value, void>::Revivable RevivableCallback; |
| // Make the global handle weak and set the callback parameter for the |
| @@ -141,7 +145,14 @@ class GlobalHandles { |
| // reason is that Smi::FromInt(0) does not change during garage collection. |
| static void MakeWeak(Object** location, |
| void* parameter, |
| - RevivableCallback weak_reference_callback); |
| + WeakCallback weak_callback, |
|
Sven Panne
2013/09/05 08:24:09
I'm a bit lost here: Why do we need a 2nd kind of
dcarney
2013/09/05 08:32:05
this handle removes direct access to the underlyin
Sven Panne
2013/09/05 08:43:01
Ah, OK. So the revivable stuff is only there for a
|
| + RevivableCallback revivable_callback); |
| + |
| + static inline void MakeWeak(Object** location, |
| + void* parameter, |
| + RevivableCallback revivable_callback) { |
| + MakeWeak(location, parameter, NULL, revivable_callback); |
| + } |
| void RecordStats(HeapStats* stats); |