| 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 import "dart:math"; | 5 import "dart:math"; |
| 6 import "dart:typed_data"; | 6 import "dart:typed_data"; |
| 7 | 7 |
| 8 // Equivalent of calling FATAL from C++ code. | 8 // Equivalent of calling FATAL from C++ code. |
| 9 _fatal(msg) native "DartCore_fatal"; | 9 _fatal(msg) native "DartCore_fatal"; |
| 10 | 10 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 return false; | 54 return false; |
| 55 } | 55 } |
| 56 while(true) { | 56 while(true) { |
| 57 if (yieldEachIterator != null) { | 57 if (yieldEachIterator != null) { |
| 58 if (yieldEachIterator.moveNext()) { | 58 if (yieldEachIterator.moveNext()) { |
| 59 return true; | 59 return true; |
| 60 } | 60 } |
| 61 yieldEachIterator = null; | 61 yieldEachIterator = null; |
| 62 } | 62 } |
| 63 isYieldEach = false; | 63 isYieldEach = false; |
| 64 // moveNextFn() will update the values of isYieldEach and _current. |
| 64 if (!moveNextFn(this)) { | 65 if (!moveNextFn(this)) { |
| 65 moveNextFn = null; | 66 moveNextFn = null; |
| 66 _current = null; | 67 _current = null; |
| 67 return false; | 68 return false; |
| 68 } | 69 } |
| 69 if (isYieldEach) { | 70 if (isYieldEach) { |
| 70 // Spec mandates: it is a dynamic error if the class of [the object | 71 // Spec mandates: it is a dynamic error if the class of [the object |
| 71 // returned by yield*] does not implement Iterable. | 72 // returned by yield*] does not implement Iterable. |
| 72 yieldEachIterator = (_current as Iterable).iterator; | 73 yieldEachIterator = (_current as Iterable).iterator; |
| 73 _current = null; | 74 _current = null; |
| 74 continue; | 75 continue; |
| 75 } | 76 } |
| 76 return true; | 77 return true; |
| 77 } | 78 } |
| 78 } | 79 } |
| 79 } | 80 } |
| 80 | 81 |
| 81 patch class StackTrace { | 82 patch class StackTrace { |
| 82 /* patch */ static StackTrace get current native "StackTrace_current"; | 83 /* patch */ static StackTrace get current native "StackTrace_current"; |
| 83 } | 84 } |
| OLD | NEW |