OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 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. |
| 4 |
| 5 // Patch file for dart:dev library. |
| 6 |
| 7 import 'dart:_js_helper' show patch; |
| 8 import 'dart:_foreign_helper' show JS; |
| 9 |
| 10 /// Stop the program as if a breakpoint where hit at the following statement. |
| 11 /// NOTE: When invoked, the isolate will not return until a debugger |
| 12 /// continues execution. When running in the Dart VM the behaviour is the same |
| 13 /// regardless of whether or not a debugger is connected. When compiled to |
| 14 /// JavaScript, this uses the "debugger" statement, and behaves exactly as |
| 15 /// that does. |
| 16 @patch |
| 17 @ForceInline() |
| 18 void breakHere() { |
| 19 JS('', 'debugger'); |
| 20 } |
| 21 |
| 22 /// If [expr] is true, stop the program as if a breakpoint where hit at the |
| 23 /// following statement. See [breakHere]. |
| 24 @patch |
| 25 @ForceInline() |
| 26 void breakHereIf(bool expr) { |
| 27 if (expr) { |
| 28 breakHere(); |
| 29 } |
| 30 } |
OLD | NEW |