Index: include/v8.h |
diff --git a/include/v8.h b/include/v8.h |
index 95edfdb10cad504069835b8a87afaca55b5e594d..9a577765b439ae90c50f0cd866603924c087528f 100644 |
--- a/include/v8.h |
+++ b/include/v8.h |
@@ -4951,16 +4951,19 @@ typedef bool (*AllowCodeGenerationFromStringsCallback)(Local<Context> context); |
// --- Garbage Collection Callbacks --- |
/** |
- * Applications can register callback functions which will be called |
- * before and after a garbage collection. Allocations are not |
- * allowed in the callback functions, you therefore cannot manipulate |
- * objects (set or delete properties for example) since it is possible |
- * such operations will result in the allocation of objects. |
+ * Applications can register callback functions which will be called before and |
+ * after certain garbage collection operations. Allocations are not allowed in |
+ * the callback functions, you therefore cannot manipulate objects (set or |
+ * delete properties for example) since it is possible such operations will |
+ * result in the allocation of objects. |
*/ |
enum GCType { |
kGCTypeScavenge = 1 << 0, |
kGCTypeMarkSweepCompact = 1 << 1, |
- kGCTypeAll = kGCTypeScavenge | kGCTypeMarkSweepCompact |
+ kGCTypeIncrementalMarking = 1 << 2, |
+ kGCTypeProcessWeakCallbacks = 1 << 3, |
+ kGCTypeAll = kGCTypeScavenge | kGCTypeMarkSweepCompact | |
+ kGCTypeIncrementalMarking | kGCTypeProcessWeakCallbacks |
}; |
enum GCCallbackFlags { |
@@ -4970,8 +4973,13 @@ enum GCCallbackFlags { |
kGCCallbackFlagSynchronousPhantomCallbackProcessing = 1 << 3 |
}; |
-typedef void (*GCPrologueCallback)(GCType type, GCCallbackFlags flags); |
-typedef void (*GCEpilogueCallback)(GCType type, GCCallbackFlags flags); |
+V8_DEPRECATE_SOON("Use GCCallBack instead", |
+ typedef void (*GCPrologueCallback)(GCType type, |
+ GCCallbackFlags flags)); |
+V8_DEPRECATE_SOON("Use GCCallBack instead", |
+ typedef void (*GCEpilogueCallback)(GCType type, |
+ GCCallbackFlags flags)); |
+typedef void (*GCCallback)(GCType type, GCCallbackFlags flags); |
typedef void (*InterruptCallback)(Isolate* isolate, void* data); |
@@ -5547,12 +5555,16 @@ class V8_EXPORT Isolate { |
template<typename T, typename S> |
void SetReference(const Persistent<T>& parent, const Persistent<S>& child); |
- typedef void (*GCPrologueCallback)(Isolate* isolate, |
- GCType type, |
- GCCallbackFlags flags); |
- typedef void (*GCEpilogueCallback)(Isolate* isolate, |
- GCType type, |
- GCCallbackFlags flags); |
+ V8_DEPRECATE_SOON("Use GCCallBack instead", |
+ typedef void (*GCPrologueCallback)(Isolate* isolate, |
+ GCType type, |
+ GCCallbackFlags flags)); |
+ V8_DEPRECATE_SOON("Use GCCallBack instead", |
+ typedef void (*GCEpilogueCallback)(Isolate* isolate, |
+ GCType type, |
+ GCCallbackFlags flags)); |
+ typedef void (*GCCallback)(Isolate* isolate, GCType type, |
+ GCCallbackFlags flags); |
/** |
* Enables the host application to receive a notification before a |
@@ -5563,14 +5575,14 @@ class V8_EXPORT Isolate { |
* not possible to register the same callback function two times with |
* different GCType filters. |
*/ |
- void AddGCPrologueCallback( |
- GCPrologueCallback callback, GCType gc_type_filter = kGCTypeAll); |
+ void AddGCPrologueCallback(GCCallback callback, |
+ GCType gc_type_filter = kGCTypeAll); |
/** |
* This function removes callback which was installed by |
* AddGCPrologueCallback function. |
*/ |
- void RemoveGCPrologueCallback(GCPrologueCallback callback); |
+ void RemoveGCPrologueCallback(GCCallback callback); |
/** |
* Enables the host application to receive a notification after a |
@@ -5581,15 +5593,14 @@ class V8_EXPORT Isolate { |
* not possible to register the same callback function two times with |
* different GCType filters. |
*/ |
- void AddGCEpilogueCallback( |
- GCEpilogueCallback callback, GCType gc_type_filter = kGCTypeAll); |
+ void AddGCEpilogueCallback(GCCallback callback, |
+ GCType gc_type_filter = kGCTypeAll); |
/** |
* This function removes callback which was installed by |
* AddGCEpilogueCallback function. |
*/ |
- void RemoveGCEpilogueCallback(GCEpilogueCallback callback); |
- |
+ void RemoveGCEpilogueCallback(GCCallback callback); |
/** |
* Forcefully terminate the current thread of JavaScript execution |
@@ -6046,7 +6057,7 @@ class V8_EXPORT V8 { |
*/ |
static V8_DEPRECATE_SOON( |
"Use isolate version", |
- void AddGCPrologueCallback(GCPrologueCallback callback, |
+ void AddGCPrologueCallback(GCCallback callback, |
GCType gc_type_filter = kGCTypeAll)); |
/** |
@@ -6055,7 +6066,7 @@ class V8_EXPORT V8 { |
*/ |
V8_INLINE static V8_DEPRECATE_SOON( |
"Use isolate version", |
- void RemoveGCPrologueCallback(GCPrologueCallback callback)); |
+ void RemoveGCPrologueCallback(GCCallback callback)); |
/** |
* Enables the host application to receive a notification after a |
@@ -6069,7 +6080,7 @@ class V8_EXPORT V8 { |
*/ |
static V8_DEPRECATE_SOON( |
"Use isolate version", |
- void AddGCEpilogueCallback(GCEpilogueCallback callback, |
+ void AddGCEpilogueCallback(GCCallback callback, |
GCType gc_type_filter = kGCTypeAll)); |
/** |
@@ -6078,7 +6089,7 @@ class V8_EXPORT V8 { |
*/ |
V8_INLINE static V8_DEPRECATE_SOON( |
"Use isolate version", |
- void RemoveGCEpilogueCallback(GCEpilogueCallback callback)); |
+ void RemoveGCEpilogueCallback(GCCallback callback)); |
/** |
* Enables the host application to provide a mechanism to be notified |
@@ -8257,17 +8268,17 @@ void V8::SetFatalErrorHandler(FatalErrorCallback callback) { |
} |
-void V8::RemoveGCPrologueCallback(GCPrologueCallback callback) { |
+void V8::RemoveGCPrologueCallback(GCCallback callback) { |
Isolate* isolate = Isolate::GetCurrent(); |
isolate->RemoveGCPrologueCallback( |
- reinterpret_cast<v8::Isolate::GCPrologueCallback>(callback)); |
+ reinterpret_cast<v8::Isolate::GCCallback>(callback)); |
} |
-void V8::RemoveGCEpilogueCallback(GCEpilogueCallback callback) { |
+void V8::RemoveGCEpilogueCallback(GCCallback callback) { |
Isolate* isolate = Isolate::GetCurrent(); |
isolate->RemoveGCEpilogueCallback( |
- reinterpret_cast<v8::Isolate::GCEpilogueCallback>(callback)); |
+ reinterpret_cast<v8::Isolate::GCCallback>(callback)); |
} |