OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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/dart_entry.h" | 5 #include "vm/dart_entry.h" |
6 | 6 |
7 #include "vm/class_finalizer.h" | 7 #include "vm/class_finalizer.h" |
8 #include "vm/compiler.h" | 8 #include "vm/compiler.h" |
9 #include "vm/debugger.h" | 9 #include "vm/debugger.h" |
10 #include "vm/object_store.h" | 10 #include "vm/object_store.h" |
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
554 zone, isolate_lib.PrivateName(Symbols::_handleMessage())); | 554 zone, isolate_lib.PrivateName(Symbols::_handleMessage())); |
555 function = Resolver::ResolveStatic(isolate_lib, class_name, function_name, | 555 function = Resolver::ResolveStatic(isolate_lib, class_name, function_name, |
556 kTypeArgsLen, kNumArguments, | 556 kTypeArgsLen, kNumArguments, |
557 Object::empty_array()); | 557 Object::empty_array()); |
558 ASSERT(!function.IsNull()); | 558 ASSERT(!function.IsNull()); |
559 isolate->object_store()->set_handle_message_function(function); | 559 isolate->object_store()->set_handle_message_function(function); |
560 } | 560 } |
561 const Array& args = Array::Handle(zone, Array::New(kNumArguments)); | 561 const Array& args = Array::Handle(zone, Array::New(kNumArguments)); |
562 args.SetAt(0, handler); | 562 args.SetAt(0, handler); |
563 args.SetAt(1, message); | 563 args.SetAt(1, message); |
564 if (FLAG_support_debugger && isolate->debugger()->IsStepping()) { | 564 #if !defined(PRODUCT) |
| 565 if (isolate->debugger()->IsStepping()) { |
565 // If the isolate is being debugged and the debugger was stepping | 566 // If the isolate is being debugged and the debugger was stepping |
566 // through code, enable single stepping so debugger will stop | 567 // through code, enable single stepping so debugger will stop |
567 // at the first location the user is interested in. | 568 // at the first location the user is interested in. |
568 isolate->debugger()->SetResumeAction(Debugger::kStepInto); | 569 isolate->debugger()->SetResumeAction(Debugger::kStepInto); |
569 } | 570 } |
| 571 #endif |
570 const Object& result = | 572 const Object& result = |
571 Object::Handle(zone, DartEntry::InvokeFunction(function, args)); | 573 Object::Handle(zone, DartEntry::InvokeFunction(function, args)); |
572 ASSERT(result.IsNull() || result.IsError()); | 574 ASSERT(result.IsNull() || result.IsError()); |
573 return result.raw(); | 575 return result.raw(); |
574 } | 576 } |
575 | 577 |
576 RawObject* DartLibraryCalls::DrainMicrotaskQueue() { | 578 RawObject* DartLibraryCalls::DrainMicrotaskQueue() { |
577 Zone* zone = Thread::Current()->zone(); | 579 Zone* zone = Thread::Current()->zone(); |
578 Library& isolate_lib = Library::Handle(zone, Library::IsolateLibrary()); | 580 Library& isolate_lib = Library::Handle(zone, Library::IsolateLibrary()); |
579 ASSERT(!isolate_lib.IsNull()); | 581 ASSERT(!isolate_lib.IsNull()); |
(...skipping 19 matching lines...) Expand all Loading... |
599 const Array& args = Array::Handle(Array::New(kNumArguments)); | 601 const Array& args = Array::Handle(Array::New(kNumArguments)); |
600 args.SetAt(0, map); | 602 args.SetAt(0, map); |
601 args.SetAt(1, key); | 603 args.SetAt(1, key); |
602 args.SetAt(2, value); | 604 args.SetAt(2, value); |
603 const Object& result = | 605 const Object& result = |
604 Object::Handle(DartEntry::InvokeFunction(function, args)); | 606 Object::Handle(DartEntry::InvokeFunction(function, args)); |
605 return result.raw(); | 607 return result.raw(); |
606 } | 608 } |
607 | 609 |
608 } // namespace dart | 610 } // namespace dart |
OLD | NEW |