Index: include/v8.h |
diff --git a/include/v8.h b/include/v8.h |
index c4a54a46ed712f3d41dedce76f7d42dcc75a8502..46762bfcc7e04f98b4206ca3300010c6fb66652e 100644 |
--- a/include/v8.h |
+++ b/include/v8.h |
@@ -402,6 +402,16 @@ template <class T> class Persistent : public Handle<T> { |
*/ |
inline void MarkIndependent(); |
+ /** |
+ Marks the reference to this object externally unreachable. |
+ Scavenger GC treats this object unreachable if all objects |
+ in the object group which this object belongs to are neither |
+ strongly reachable nor weakly reachable. This mark is cleared |
+ after each scavenger GC. If this object is not in the new |
+ space, this API has no effect. |
+ */ |
+ inline void MarkExternallyUnreachable(); |
+ |
/** Returns true if this handle was previously marked as independent. */ |
inline bool IsIndependent() const; |
@@ -3493,7 +3503,11 @@ class V8EXPORT V8 { |
WeakReferenceCallback); |
static void ClearWeak(internal::Object** global_handle); |
static void MarkIndependent(internal::Object** global_handle); |
+<<<<<<< HEAD |
static bool IsGlobalIndependent(internal::Object** global_handle); |
+======= |
+ static void MarkExternallyUnreachable(internal::Object** global_handle); |
+>>>>>>> temp |
abarth-chromium
2012/10/24 17:35:01
Looks like you have some conflict markers in your
|
static bool IsGlobalNearDeath(internal::Object** global_handle); |
static bool IsGlobalWeak(internal::Object** global_handle); |
static void SetWrapperClassId(internal::Object** global_handle, |
@@ -4264,6 +4278,11 @@ void Persistent<T>::MarkIndependent() { |
} |
template <class T> |
+void Persistent<T>::MarkExternallyUnreachable() { |
+ V8::MarkExternallyUnreachable(reinterpret_cast<internal::Object**>(**this)); |
+} |
+ |
+template <class T> |
void Persistent<T>::SetWrapperClassId(uint16_t class_id) { |
V8::SetWrapperClassId(reinterpret_cast<internal::Object**>(**this), class_id); |
} |