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 library dart._js_helper; | 5 library dart._js_helper; |
6 | 6 |
7 import 'dart:collection'; | 7 import 'dart:collection'; |
8 | 8 |
9 import 'dart:_debugger' show stackTraceMapper; | 9 import 'dart:_debugger' show stackTraceMapper; |
10 | 10 |
(...skipping 770 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
781 class JSName { | 781 class JSName { |
782 final String name; | 782 final String name; |
783 const JSName(this.name); | 783 const JSName(this.name); |
784 } | 784 } |
785 | 785 |
786 /** | 786 /** |
787 * Special interface recognized by the compiler and implemented by DOM | 787 * Special interface recognized by the compiler and implemented by DOM |
788 * objects that support integer indexing. This interface is not | 788 * objects that support integer indexing. This interface is not |
789 * visible to anyone, and is only injected into special libraries. | 789 * visible to anyone, and is only injected into special libraries. |
790 */ | 790 */ |
791 abstract class JavaScriptIndexingBehavior {} | 791 abstract class JavaScriptIndexingBehavior<E> {} |
792 | 792 |
793 // TODO(lrn): These exceptions should be implemented in core. | 793 // TODO(lrn): These exceptions should be implemented in core. |
794 // When they are, remove the 'Implementation' here. | 794 // When they are, remove the 'Implementation' here. |
795 | 795 |
796 /** Thrown by type assertions that fail. */ | 796 /** Thrown by type assertions that fail. */ |
797 class TypeErrorImplementation extends Error implements TypeError { | 797 class TypeErrorImplementation extends Error implements TypeError { |
798 final String message; | 798 final String message; |
799 | 799 |
800 /** | 800 /** |
801 * Normal type error caused by a failed subtype test. | 801 * Normal type error caused by a failed subtype test. |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
923 // we have no way of telling the compiler yet, so it will generate an extra | 923 // we have no way of telling the compiler yet, so it will generate an extra |
924 // layer of indirection that wraps the SyncIterator. | 924 // layer of indirection that wraps the SyncIterator. |
925 _jsIterator() => JS('', '#(...#)', _generator, _args); | 925 _jsIterator() => JS('', '#(...#)', _generator, _args); |
926 | 926 |
927 Iterator<E> get iterator => new SyncIterator<E>(_jsIterator()); | 927 Iterator<E> get iterator => new SyncIterator<E>(_jsIterator()); |
928 } | 928 } |
929 | 929 |
930 class BooleanConversionAssertionError extends AssertionError { | 930 class BooleanConversionAssertionError extends AssertionError { |
931 toString() => 'Failed assertion: boolean expression must not be null'; | 931 toString() => 'Failed assertion: boolean expression must not be null'; |
932 } | 932 } |
OLD | NEW |