Index: include/v8.h |
diff --git a/include/v8.h b/include/v8.h |
index 38312e9b1fffbe1fd1171122cd5a87789c3cd905..b40a4bf92dd66ae5f072fc7fe9e2eaafd83eded4 100644 |
--- a/include/v8.h |
+++ b/include/v8.h |
@@ -3555,17 +3555,39 @@ class V8EXPORT V8 { |
RetainedObjectInfo* info); |
/** |
+ * Sets a representative object to a group. Used in conjunction with implicit |
+ * references: If you're going to use AddImplicitReference with the group, you |
+ * need to set a representative object too. |
+ */ |
+ static void SetObjectGroupRepresentative(Isolate* isolate, |
+ UniqueId id, |
+ const Persistent<Object>& object); |
+ |
+ /** |
* Allows the host application to declare implicit references between |
* the objects: if |parent| is alive, all |children| are alive too. |
* After each garbage collection, all implicit references |
* are removed. It is intended to be used in the before-garbage-collection |
* callback function. |
*/ |
+ // TODO(marja): Deprecate AddImplicitReferences. Use |
+ // SetObjectGroupRepresentativeObject and AddImplicitReference instead. |
static void AddImplicitReferences(Persistent<Object> parent, |
Persistent<Value>* children, |
size_t length); |
/** |
+ * Allows the host application to declare implicit references. If the |
+ * representative object of the object group (identified by id) is alive, the |
+ * children are alive too. After each garbage collection, all implicit |
+ * references are removed. It is intended to be used in the |
+ * before-garbage-collection callback function. |
+ */ |
+ static void AddImplicitReference(Isolate* isolate, |
+ UniqueId id, |
+ const Persistent<Value>& object); |
+ |
+ /** |
* Initializes from snapshot if possible. Otherwise, attempts to |
* initialize from scratch. This function is called implicitly if |
* you use the API without calling it first. |