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 library dart2js.compiler_base; | 5 library dart2js.compiler_base; |
6 | 6 |
7 import 'dart:async' show Future; | 7 import 'dart:async' show Future; |
8 | 8 |
9 import '../compiler_new.dart' as api; | 9 import '../compiler_new.dart' as api; |
10 import 'closure.dart' as closureMapping show ClosureTask; | 10 import 'closure.dart' as closureMapping show ClosureTask; |
(...skipping 19 matching lines...) Expand all Loading... |
30 import 'diagnostics/invariant.dart' show REPORT_EXCESS_RESOLUTION; | 30 import 'diagnostics/invariant.dart' show REPORT_EXCESS_RESOLUTION; |
31 import 'diagnostics/messages.dart' show Message, MessageTemplate; | 31 import 'diagnostics/messages.dart' show Message, MessageTemplate; |
32 import 'dump_info.dart' show DumpInfoTask; | 32 import 'dump_info.dart' show DumpInfoTask; |
33 import 'elements/elements.dart'; | 33 import 'elements/elements.dart'; |
34 import 'elements/entities.dart'; | 34 import 'elements/entities.dart'; |
35 import 'elements/modelx.dart' show ErroneousElementX; | 35 import 'elements/modelx.dart' show ErroneousElementX; |
36 import 'elements/resolution_types.dart' | 36 import 'elements/resolution_types.dart' |
37 show | 37 show |
38 ResolutionDartType, | 38 ResolutionDartType, |
39 ResolutionDynamicType, | 39 ResolutionDynamicType, |
| 40 ResolutionFunctionType, |
40 ResolutionInterfaceType, | 41 ResolutionInterfaceType, |
41 Types; | 42 Types; |
42 import 'enqueue.dart' show Enqueuer, EnqueueTask, ResolutionEnqueuer; | 43 import 'enqueue.dart' show Enqueuer, EnqueueTask, ResolutionEnqueuer; |
43 import 'environment.dart'; | 44 import 'environment.dart'; |
44 import 'id_generator.dart'; | 45 import 'id_generator.dart'; |
45 import 'io/source_information.dart' show SourceInformation; | 46 import 'io/source_information.dart' show SourceInformation; |
46 import 'js_backend/backend.dart' show JavaScriptBackend; | 47 import 'js_backend/backend.dart' show JavaScriptBackend; |
47 import 'library_loader.dart' | 48 import 'library_loader.dart' |
48 show | 49 show |
49 ElementScanner, | 50 ElementScanner, |
(...skipping 1911 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1961 // should not try to find the given element. | 1962 // should not try to find the given element. |
1962 if (library != null && library.isSynthesized) { | 1963 if (library != null && library.isSynthesized) { |
1963 return null; | 1964 return null; |
1964 } | 1965 } |
1965 if (library == null && required) { | 1966 if (library == null && required) { |
1966 throw new SpannableAssertionFailure( | 1967 throw new SpannableAssertionFailure( |
1967 library, "The library '${uri}' was not found."); | 1968 library, "The library '${uri}' was not found."); |
1968 } | 1969 } |
1969 return library; | 1970 return library; |
1970 } | 1971 } |
| 1972 |
| 1973 @override |
| 1974 CallStructure getCallStructure(MethodElement method) { |
| 1975 ResolutionFunctionType type = method.computeType(_resolution); |
| 1976 return new CallStructure( |
| 1977 type.parameterTypes.length + |
| 1978 type.optionalParameterTypes.length + |
| 1979 type.namedParameterTypes.length, |
| 1980 type.namedParameters); |
| 1981 } |
| 1982 |
| 1983 @override |
| 1984 bool isDeferredLoadLibraryGetter(MemberElement member) { |
| 1985 return member.isDeferredLoaderGetter; |
| 1986 } |
| 1987 |
| 1988 @override |
| 1989 ResolutionFunctionType getFunctionType(MethodElement method) { |
| 1990 method.computeType(_resolution); |
| 1991 return method.type; |
| 1992 } |
1971 } | 1993 } |
OLD | NEW |