OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_EXECUTION_H_ | 5 #ifndef V8_EXECUTION_H_ |
6 #define V8_EXECUTION_H_ | 6 #define V8_EXECUTION_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/base/atomicops.h" | 9 #include "src/base/atomicops.h" |
10 #include "src/handles.h" | 10 #include "src/handles.h" |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 Isolate* isolate, Handle<Object> obj); | 93 Isolate* isolate, Handle<Object> obj); |
94 | 94 |
95 // Create a new date object from 'time'. | 95 // Create a new date object from 'time'. |
96 MUST_USE_RESULT static MaybeHandle<Object> NewDate( | 96 MUST_USE_RESULT static MaybeHandle<Object> NewDate( |
97 Isolate* isolate, double time); | 97 Isolate* isolate, double time); |
98 | 98 |
99 // Create a new regular expression object from 'pattern' and 'flags'. | 99 // Create a new regular expression object from 'pattern' and 'flags'. |
100 MUST_USE_RESULT static MaybeHandle<JSRegExp> NewJSRegExp( | 100 MUST_USE_RESULT static MaybeHandle<JSRegExp> NewJSRegExp( |
101 Handle<String> pattern, Handle<String> flags); | 101 Handle<String> pattern, Handle<String> flags); |
102 | 102 |
103 static Handle<Object> GetFunctionFor(); | |
104 static Handle<String> GetStackTraceLine(Handle<Object> recv, | 103 static Handle<String> GetStackTraceLine(Handle<Object> recv, |
105 Handle<JSFunction> fun, | 104 Handle<JSFunction> fun, |
106 Handle<Object> pos, | 105 Handle<Object> pos, |
107 Handle<Object> is_global); | 106 Handle<Object> is_global); |
108 | 107 |
109 // Get a function delegate (or undefined) for the given non-function | 108 // Get a function delegate for the given non-function object. |
110 // object. Used for support calling objects as functions. | 109 // Used for support calling objects as functions. |
111 static Handle<Object> GetFunctionDelegate(Isolate* isolate, | 110 MUST_USE_RESULT static MaybeHandle<JSFunction> GetFunctionDelegate( |
112 Handle<Object> object); | 111 Isolate* isolate, Handle<Object> object); |
113 MUST_USE_RESULT static MaybeHandle<Object> TryGetFunctionDelegate( | |
114 Isolate* isolate, | |
115 Handle<Object> object); | |
116 | 112 |
117 // Get a function delegate (or undefined) for the given non-function | 113 // Get a function delegate (or undefined) for the given non-function |
118 // object. Used for support calling objects as constructors. | 114 // object. Used for support calling objects as constructors. |
119 static Handle<Object> GetConstructorDelegate(Isolate* isolate, | 115 MUST_USE_RESULT static MaybeHandle<JSFunction> GetConstructorDelegate( |
120 Handle<Object> object); | 116 Isolate* isolate, Handle<Object> object); |
121 static MaybeHandle<Object> TryGetConstructorDelegate(Isolate* isolate, | 117 |
| 118 private: |
| 119 MUST_USE_RESULT static Handle<String> RenderCallSite(Isolate* isolate, |
122 Handle<Object> object); | 120 Handle<Object> object); |
123 }; | 121 }; |
124 | 122 |
125 | 123 |
126 class ExecutionAccess; | 124 class ExecutionAccess; |
127 class PostponeInterruptsScope; | 125 class PostponeInterruptsScope; |
128 | 126 |
129 | 127 |
130 // StackGuard contains the handling of the limits that are used to limit the | 128 // StackGuard contains the handling of the limits that are used to limit the |
131 // number of nested invocations of JavaScript and the stack size used in each | 129 // number of nested invocations of JavaScript and the stack size used in each |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 friend class Isolate; | 289 friend class Isolate; |
292 friend class StackLimitCheck; | 290 friend class StackLimitCheck; |
293 friend class PostponeInterruptsScope; | 291 friend class PostponeInterruptsScope; |
294 | 292 |
295 DISALLOW_COPY_AND_ASSIGN(StackGuard); | 293 DISALLOW_COPY_AND_ASSIGN(StackGuard); |
296 }; | 294 }; |
297 | 295 |
298 } } // namespace v8::internal | 296 } } // namespace v8::internal |
299 | 297 |
300 #endif // V8_EXECUTION_H_ | 298 #endif // V8_EXECUTION_H_ |
OLD | NEW |