Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1133)

Unified Diff: src/handles.h

Issue 12300018: Made Isolate a mandatory parameter for everything Handle-related. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Fixed CreateCode calls. Be nicer to MIPS. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/frames.h ('k') | src/handles.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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
};
« no previous file with comments | « src/frames.h ('k') | src/handles.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698