OLD | NEW |
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 #include "vm/object_store.h" | 5 #include "vm/object_store.h" |
6 | 6 |
7 #include "vm/exceptions.h" | 7 #include "vm/exceptions.h" |
8 #include "vm/dart_entry.h" | 8 #include "vm/dart_entry.h" |
9 #include "vm/isolate.h" | 9 #include "vm/isolate.h" |
10 #include "vm/object.h" | 10 #include "vm/object.h" |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
240 ASSERT(!cls.IsNull()); | 240 ASSERT(!cls.IsNull()); |
241 set_completer_class(cls); | 241 set_completer_class(cls); |
242 cls = async_lib.LookupClass(Symbols::StreamIterator()); | 242 cls = async_lib.LookupClass(Symbols::StreamIterator()); |
243 ASSERT(!cls.IsNull()); | 243 ASSERT(!cls.IsNull()); |
244 set_stream_iterator_class(cls); | 244 set_stream_iterator_class(cls); |
245 | 245 |
246 String& function_name = String::Handle(zone); | 246 String& function_name = String::Handle(zone); |
247 Function& function = Function::Handle(zone); | 247 Function& function = Function::Handle(zone); |
248 function_name ^= async_lib.PrivateName(Symbols::SetAsyncThreadStackTrace()); | 248 function_name ^= async_lib.PrivateName(Symbols::SetAsyncThreadStackTrace()); |
249 ASSERT(!function_name.IsNull()); | 249 ASSERT(!function_name.IsNull()); |
250 function ^= Resolver::ResolveStatic(async_lib, Object::null_string(), | 250 function ^= |
251 function_name, 1, Object::null_array()); | 251 Resolver::ResolveStatic(async_lib, Object::null_string(), function_name, |
| 252 0, 1, Object::null_array()); |
252 ASSERT(!function.IsNull()); | 253 ASSERT(!function.IsNull()); |
253 set_async_set_thread_stack_trace(function); | 254 set_async_set_thread_stack_trace(function); |
254 | 255 |
255 function_name ^= async_lib.PrivateName(Symbols::ClearAsyncThreadStackTrace()); | 256 function_name ^= async_lib.PrivateName(Symbols::ClearAsyncThreadStackTrace()); |
256 ASSERT(!function_name.IsNull()); | 257 ASSERT(!function_name.IsNull()); |
257 function ^= Resolver::ResolveStatic(async_lib, Object::null_string(), | 258 function ^= |
258 function_name, 0, Object::null_array()); | 259 Resolver::ResolveStatic(async_lib, Object::null_string(), function_name, |
| 260 0, 0, Object::null_array()); |
259 ASSERT(!function.IsNull()); | 261 ASSERT(!function.IsNull()); |
260 set_async_clear_thread_stack_trace(function); | 262 set_async_clear_thread_stack_trace(function); |
261 | 263 |
262 | 264 |
263 function_name ^= async_lib.PrivateName(Symbols::AsyncStarMoveNextHelper()); | 265 function_name ^= async_lib.PrivateName(Symbols::AsyncStarMoveNextHelper()); |
264 ASSERT(!function_name.IsNull()); | 266 ASSERT(!function_name.IsNull()); |
265 function ^= Resolver::ResolveStatic(async_lib, Object::null_string(), | 267 function ^= |
266 function_name, 1, Object::null_array()); | 268 Resolver::ResolveStatic(async_lib, Object::null_string(), function_name, |
| 269 0, 1, Object::null_array()); |
267 ASSERT(!function.IsNull()); | 270 ASSERT(!function.IsNull()); |
268 set_async_star_move_next_helper(function); | 271 set_async_star_move_next_helper(function); |
269 | 272 |
270 function_name ^= async_lib.PrivateName(Symbols::_CompleteOnAsyncReturn()); | 273 function_name ^= async_lib.PrivateName(Symbols::_CompleteOnAsyncReturn()); |
271 ASSERT(!function_name.IsNull()); | 274 ASSERT(!function_name.IsNull()); |
272 function ^= Resolver::ResolveStatic(async_lib, Object::null_string(), | 275 function ^= |
273 function_name, 2, Object::null_array()); | 276 Resolver::ResolveStatic(async_lib, Object::null_string(), function_name, |
| 277 0, 2, Object::null_array()); |
274 ASSERT(!function.IsNull()); | 278 ASSERT(!function.IsNull()); |
275 set_complete_on_async_return(function); | 279 set_complete_on_async_return(function); |
276 if (FLAG_async_debugger) { | 280 if (FLAG_async_debugger) { |
277 // Disable debugging and inlining the _CompleteOnAsyncReturn function. | 281 // Disable debugging and inlining the _CompleteOnAsyncReturn function. |
278 function.set_is_debuggable(false); | 282 function.set_is_debuggable(false); |
279 function.set_is_inlinable(false); | 283 function.set_is_inlinable(false); |
280 } | 284 } |
281 | 285 |
282 cls = | 286 cls = |
283 async_lib.LookupClassAllowPrivate(Symbols::_AsyncStarStreamController()); | 287 async_lib.LookupClassAllowPrivate(Symbols::_AsyncStarStreamController()); |
(...skipping 27 matching lines...) Expand all Loading... |
311 simple_instance_of_function_ = | 315 simple_instance_of_function_ = |
312 PrivateObjectLookup(Symbols::_simpleInstanceOf()); | 316 PrivateObjectLookup(Symbols::_simpleInstanceOf()); |
313 simple_instance_of_true_function_ = | 317 simple_instance_of_true_function_ = |
314 PrivateObjectLookup(Symbols::_simpleInstanceOfTrue()); | 318 PrivateObjectLookup(Symbols::_simpleInstanceOfTrue()); |
315 simple_instance_of_false_function_ = | 319 simple_instance_of_false_function_ = |
316 PrivateObjectLookup(Symbols::_simpleInstanceOfFalse()); | 320 PrivateObjectLookup(Symbols::_simpleInstanceOfFalse()); |
317 #endif | 321 #endif |
318 } | 322 } |
319 | 323 |
320 } // namespace dart | 324 } // namespace dart |
OLD | NEW |