Index: src/handles.h |
diff --git a/src/handles.h b/src/handles.h |
index 10fcaf86f9b48ad0cf3f50c71f1304604ca0a6b4..b0b271c5c634c14b8911d66f508a35f6e4fb94a6 100644 |
--- a/src/handles.h |
+++ b/src/handles.h |
@@ -124,18 +124,18 @@ class HandleScope { |
inline ~HandleScope(); |
// Counts the number of allocated handles. |
- static int NumberOfHandles(); |
+ static int NumberOfHandles(Isolate* isolate); |
// Creates a new handle with the given value. |
template <typename T> |
- static inline T** CreateHandle(T* value, Isolate* isolate); |
+ static inline T** CreateHandle(Isolate* isolate, T* value); |
// Deallocates any extensions used by the current scope. |
static void DeleteExtensions(Isolate* isolate); |
- static Address current_next_address(); |
- static Address current_limit_address(); |
- static Address current_level_address(); |
+ static Address current_next_address(Isolate* isolate); |
+ static Address current_limit_address(Isolate* isolate); |
+ static Address current_level_address(Isolate* isolate); |
// Closes the HandleScope (invalidating all handles |
// created in the scope of the HandleScope) and returns |
@@ -160,7 +160,7 @@ class HandleScope { |
Object** prev_limit_; |
// Extend the handle scope making room for more handles. |
- static internal::Object** Extend(); |
+ static internal::Object** Extend(Isolate* isolate); |
// Zaps the handles in the half-open interval [start, end). |
static void ZapRange(internal::Object** start, internal::Object** end); |
@@ -230,7 +230,8 @@ Handle<Object> ForceDeleteProperty(Handle<JSObject> object, |
Handle<Object> GetProperty(Handle<JSReceiver> obj, |
const char* name); |
-Handle<Object> GetProperty(Handle<Object> obj, |
+Handle<Object> GetProperty(Isolate* isolate, |
+ Handle<Object> obj, |
Handle<Object> key); |
Handle<Object> GetPropertyWithInterceptor(Handle<JSObject> receiver, |
@@ -240,7 +241,8 @@ Handle<Object> GetPropertyWithInterceptor(Handle<JSObject> receiver, |
Handle<Object> SetPrototype(Handle<JSObject> obj, Handle<Object> value); |
-Handle<Object> LookupSingleCharacterStringFromCode(uint32_t index); |
+Handle<Object> LookupSingleCharacterStringFromCode(Isolate* isolate, |
+ uint32_t index); |
Handle<JSObject> Copy(Handle<JSObject> obj); |
@@ -326,12 +328,13 @@ Handle<ObjectHashTable> PutIntoObjectHashTable(Handle<ObjectHashTable> table, |
class NoHandleAllocation BASE_EMBEDDED { |
public: |
#ifndef DEBUG |
- NoHandleAllocation() {} |
+ explicit NoHandleAllocation(Isolate* isolate) {} |
~NoHandleAllocation() {} |
#else |
- inline NoHandleAllocation(); |
+ explicit inline NoHandleAllocation(Isolate* isolate); |
inline ~NoHandleAllocation(); |
private: |
+ Isolate* isolate_; |
int level_; |
bool active_; |
#endif |
@@ -341,12 +344,13 @@ class NoHandleAllocation BASE_EMBEDDED { |
class NoHandleDereference BASE_EMBEDDED { |
public: |
#ifndef DEBUG |
- NoHandleDereference() {} |
+ explicit NoHandleDereference(Isolate* isolate) {} |
~NoHandleDereference() {} |
#else |
- inline NoHandleDereference(); |
+ explicit inline NoHandleDereference(Isolate* isolate); |
inline ~NoHandleDereference(); |
private: |
+ Isolate* isolate_; |
bool old_state_; |
#endif |
}; |
@@ -355,12 +359,13 @@ class NoHandleDereference BASE_EMBEDDED { |
class AllowHandleDereference BASE_EMBEDDED { |
public: |
#ifndef DEBUG |
- AllowHandleDereference() {} |
+ explicit AllowHandleDereference(Isolate* isolate) {} |
~AllowHandleDereference() {} |
#else |
- inline AllowHandleDereference(); |
+ explicit inline AllowHandleDereference(Isolate* isolate); |
inline ~AllowHandleDereference(); |
private: |
+ Isolate* isolate_; |
bool old_state_; |
#endif |
}; |