OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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/debugger.h" | 5 #include "vm/debugger.h" |
6 | 6 |
7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" |
8 | 8 |
9 #include "vm/code_generator.h" | 9 #include "vm/code_generator.h" |
10 #include "vm/code_patcher.h" | 10 #include "vm/code_patcher.h" |
(...skipping 1350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1361 | 1361 |
1362 void Debugger::SetEventHandler(EventHandler* handler) { | 1362 void Debugger::SetEventHandler(EventHandler* handler) { |
1363 event_handler_ = handler; | 1363 event_handler_ = handler; |
1364 } | 1364 } |
1365 | 1365 |
1366 | 1366 |
1367 bool Debugger::IsDebuggable(const Function& func) { | 1367 bool Debugger::IsDebuggable(const Function& func) { |
1368 RawFunction::Kind fkind = func.kind(); | 1368 RawFunction::Kind fkind = func.kind(); |
1369 if ((fkind == RawFunction::kImplicitGetter) || | 1369 if ((fkind == RawFunction::kImplicitGetter) || |
1370 (fkind == RawFunction::kImplicitSetter) || | 1370 (fkind == RawFunction::kImplicitSetter) || |
1371 (fkind == RawFunction::kConstImplicitGetter)) { | 1371 (fkind == RawFunction::kConstImplicitGetter) || |
| 1372 (fkind == RawFunction::kMethodExtractor)) { |
1372 return false; | 1373 return false; |
1373 } | 1374 } |
1374 const Class& cls = Class::Handle(func.Owner()); | 1375 const Class& cls = Class::Handle(func.Owner()); |
1375 const Library& lib = Library::Handle(cls.library()); | 1376 const Library& lib = Library::Handle(cls.library()); |
1376 return lib.IsDebuggable(); | 1377 return lib.IsDebuggable(); |
1377 } | 1378 } |
1378 | 1379 |
1379 | 1380 |
1380 void Debugger::SignalBpReached() { | 1381 void Debugger::SignalBpReached() { |
1381 // We ignore this breakpoint when the VM is executing code invoked | 1382 // We ignore this breakpoint when the VM is executing code invoked |
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1680 } | 1681 } |
1681 | 1682 |
1682 | 1683 |
1683 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { | 1684 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { |
1684 ASSERT(bpt->next() == NULL); | 1685 ASSERT(bpt->next() == NULL); |
1685 bpt->set_next(code_breakpoints_); | 1686 bpt->set_next(code_breakpoints_); |
1686 code_breakpoints_ = bpt; | 1687 code_breakpoints_ = bpt; |
1687 } | 1688 } |
1688 | 1689 |
1689 } // namespace dart | 1690 } // namespace dart |
OLD | NEW |