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

Side by Side Diff: runtime/vm/isolate.h

Issue 326183002: Pass around the current isolate in exception handling code. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/exceptions.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_ISOLATE_H_ 5 #ifndef VM_ISOLATE_H_
6 #define VM_ISOLATE_H_ 6 #define VM_ISOLATE_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/thread.h" 10 #include "platform/thread.h"
(...skipping 13 matching lines...) Expand all
24 // Forward declarations. 24 // Forward declarations.
25 class AbstractType; 25 class AbstractType;
26 class ApiState; 26 class ApiState;
27 class Array; 27 class Array;
28 class Class; 28 class Class;
29 class Code; 29 class Code;
30 class CodeIndexTable; 30 class CodeIndexTable;
31 class Debugger; 31 class Debugger;
32 class DeoptContext; 32 class DeoptContext;
33 class Error; 33 class Error;
34 class ExceptionHandlers;
34 class Field; 35 class Field;
35 class Function; 36 class Function;
36 class GrowableObjectArray; 37 class GrowableObjectArray;
37 class HandleScope; 38 class HandleScope;
38 class HandleVisitor; 39 class HandleVisitor;
39 class Heap; 40 class Heap;
40 class ICData; 41 class ICData;
41 class Instance; 42 class Instance;
42 class IsolateProfilerData; 43 class IsolateProfilerData;
43 class IsolateSpawnState; 44 class IsolateSpawnState;
44 class InterruptableThreadState; 45 class InterruptableThreadState;
45 class Library; 46 class Library;
46 class LongJumpScope; 47 class LongJumpScope;
47 class MessageHandler; 48 class MessageHandler;
48 class Mutex; 49 class Mutex;
49 class Object; 50 class Object;
50 class ObjectIdRing; 51 class ObjectIdRing;
51 class ObjectPointerVisitor; 52 class ObjectPointerVisitor;
52 class ObjectStore; 53 class ObjectStore;
54 class PcDescriptors;
53 class RawInstance; 55 class RawInstance;
54 class RawArray; 56 class RawArray;
55 class RawContext; 57 class RawContext;
56 class RawDouble; 58 class RawDouble;
57 class RawGrowableObjectArray; 59 class RawGrowableObjectArray;
58 class RawMint; 60 class RawMint;
59 class RawObject; 61 class RawObject;
60 class RawInteger; 62 class RawInteger;
61 class RawError; 63 class RawError;
62 class RawFloat32x4; 64 class RawFloat32x4;
(...skipping 19 matching lines...) Expand all
82 private: 84 private:
83 DISALLOW_COPY_AND_ASSIGN(IsolateVisitor); 85 DISALLOW_COPY_AND_ASSIGN(IsolateVisitor);
84 }; 86 };
85 87
86 #define REUSABLE_HANDLE_LIST(V) \ 88 #define REUSABLE_HANDLE_LIST(V) \
87 V(AbstractType) \ 89 V(AbstractType) \
88 V(Array) \ 90 V(Array) \
89 V(Class) \ 91 V(Class) \
90 V(Code) \ 92 V(Code) \
91 V(Error) \ 93 V(Error) \
94 V(ExceptionHandlers) \
92 V(Field) \ 95 V(Field) \
93 V(Function) \ 96 V(Function) \
94 V(GrowableObjectArray) \ 97 V(GrowableObjectArray) \
95 V(Instance) \ 98 V(Instance) \
96 V(Library) \ 99 V(Library) \
97 V(Object) \ 100 V(Object) \
101 V(PcDescriptors) \
98 V(String) \ 102 V(String) \
99 V(TypeArguments) \ 103 V(TypeArguments) \
100 V(TypeParameter) \ 104 V(TypeParameter) \
101 105
102 class Isolate : public BaseIsolate { 106 class Isolate : public BaseIsolate {
103 public: 107 public:
104 ~Isolate(); 108 ~Isolate();
105 109
106 static inline Isolate* Current() { 110 static inline Isolate* Current() {
107 return reinterpret_cast<Isolate*>(Thread::GetThreadLocal(isolate_key)); 111 return reinterpret_cast<Isolate*>(Thread::GetThreadLocal(isolate_key));
(...skipping 648 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 char* script_url_; 760 char* script_url_;
757 char* library_url_; 761 char* library_url_;
758 char* class_name_; 762 char* class_name_;
759 char* function_name_; 763 char* function_name_;
760 char* exception_callback_name_; 764 char* exception_callback_name_;
761 }; 765 };
762 766
763 } // namespace dart 767 } // namespace dart
764 768
765 #endif // VM_ISOLATE_H_ 769 #endif // VM_ISOLATE_H_
OLDNEW
« no previous file with comments | « runtime/vm/exceptions.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698