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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 Isolate* isolate, Handle<Object> obj); | 85 Isolate* isolate, Handle<Object> obj); |
86 | 86 |
87 // Create a new date object from 'time'. | 87 // Create a new date object from 'time'. |
88 MUST_USE_RESULT static MaybeHandle<Object> NewDate( | 88 MUST_USE_RESULT static MaybeHandle<Object> NewDate( |
89 Isolate* isolate, double time); | 89 Isolate* isolate, double time); |
90 | 90 |
91 // Create a new regular expression object from 'pattern' and 'flags'. | 91 // Create a new regular expression object from 'pattern' and 'flags'. |
92 MUST_USE_RESULT static MaybeHandle<JSRegExp> NewJSRegExp( | 92 MUST_USE_RESULT static MaybeHandle<JSRegExp> NewJSRegExp( |
93 Handle<String> pattern, Handle<String> flags); | 93 Handle<String> pattern, Handle<String> flags); |
94 | 94 |
95 static Handle<Object> GetFunctionFor(); | |
96 static Handle<String> GetStackTraceLine(Handle<Object> recv, | 95 static Handle<String> GetStackTraceLine(Handle<Object> recv, |
97 Handle<JSFunction> fun, | 96 Handle<JSFunction> fun, |
98 Handle<Object> pos, | 97 Handle<Object> pos, |
99 Handle<Object> is_global); | 98 Handle<Object> is_global); |
100 | 99 |
101 // Get a function delegate (or undefined) for the given non-function | 100 // Get a function delegate for the given non-function object. |
102 // object. Used for support calling objects as functions. | 101 // Used for support calling objects as functions. |
103 static Handle<Object> GetFunctionDelegate(Isolate* isolate, | 102 MUST_USE_RESULT static MaybeHandle<JSFunction> GetFunctionDelegate( |
104 Handle<Object> object); | 103 Isolate* isolate, Handle<Object> object); |
105 MUST_USE_RESULT static MaybeHandle<Object> TryGetFunctionDelegate( | |
106 Isolate* isolate, | |
107 Handle<Object> object); | |
108 | 104 |
109 // Get a function delegate (or undefined) for the given non-function | 105 // Get a function delegate (or undefined) for the given non-function |
110 // object. Used for support calling objects as constructors. | 106 // object. Used for support calling objects as constructors. |
111 static Handle<Object> GetConstructorDelegate(Isolate* isolate, | 107 MUST_USE_RESULT static MaybeHandle<JSFunction> GetConstructorDelegate( |
112 Handle<Object> object); | 108 Isolate* isolate, Handle<Object> object); |
113 static MaybeHandle<Object> TryGetConstructorDelegate(Isolate* isolate, | 109 |
| 110 private: |
| 111 MUST_USE_RESULT static Handle<String> RenderCallSite(Isolate* isolate, |
114 Handle<Object> object); | 112 Handle<Object> object); |
115 }; | 113 }; |
116 | 114 |
117 | 115 |
118 class ExecutionAccess; | 116 class ExecutionAccess; |
119 class PostponeInterruptsScope; | 117 class PostponeInterruptsScope; |
120 | 118 |
121 | 119 |
122 // StackGuard contains the handling of the limits that are used to limit the | 120 // StackGuard contains the handling of the limits that are used to limit the |
123 // number of nested invocations of JavaScript and the stack size used in each | 121 // 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... |
283 friend class Isolate; | 281 friend class Isolate; |
284 friend class StackLimitCheck; | 282 friend class StackLimitCheck; |
285 friend class PostponeInterruptsScope; | 283 friend class PostponeInterruptsScope; |
286 | 284 |
287 DISALLOW_COPY_AND_ASSIGN(StackGuard); | 285 DISALLOW_COPY_AND_ASSIGN(StackGuard); |
288 }; | 286 }; |
289 | 287 |
290 } } // namespace v8::internal | 288 } } // namespace v8::internal |
291 | 289 |
292 #endif // V8_EXECUTION_H_ | 290 #endif // V8_EXECUTION_H_ |
OLD | NEW |