Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Side by Side Diff: pkg/compiler/lib/src/js_emitter/lazy_emitter/model_emitter.dart

Issue 2941033002: Finish strong mode cleaning of dart2js. (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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.js_emitter.lazy_emitter.model_emitter; 5 library dart2js.js_emitter.lazy_emitter.model_emitter;
6 6
7 import 'package:js_runtime/shared/embedded_names.dart' 7 import 'package:js_runtime/shared/embedded_names.dart'
8 show 8 show
9 CREATE_NEW_ISOLATE, 9 CREATE_NEW_ISOLATE,
10 DEFERRED_LIBRARY_URIS, 10 DEFERRED_LIBRARY_URIS,
(...skipping 878 matching lines...) Expand 10 before | Expand all | Expand 10 after
889 } 889 }
890 890
891 data.addAll(method.parameterStubs.expand(makeNameCallNameCodeTriplet)); 891 data.addAll(method.parameterStubs.expand(makeNameCallNameCodeTriplet));
892 if (method.canBeApplied) { 892 if (method.canBeApplied) {
893 data.add(js.number(method.requiredParameterCount)); 893 data.add(js.number(method.requiredParameterCount));
894 data.add(_encodeOptionalParameterDefaultValues(method)); 894 data.add(_encodeOptionalParameterDefaultValues(method));
895 } 895 }
896 return [js.quoteName(method.name), new js.ArrayInitializer(data)]; 896 return [js.quoteName(method.name), new js.ArrayInitializer(data)];
897 } else { 897 } else {
898 // TODO(floitsch): not the most efficient way... 898 // TODO(floitsch): not the most efficient way...
899 return ([method]..addAll(method.parameterStubs)) 899 return (<dynamic>[method]..addAll(method.parameterStubs))
900 .expand(makeNameCodePair); 900 .expand(makeNameCodePair);
901 } 901 }
902 } else { 902 } else {
903 return makeNameCodePair(method); 903 return makeNameCodePair(method);
904 } 904 }
905 } 905 }
906 906
907 Iterable<js.Expression> emitStaticMethod(StaticMethod method) { 907 Iterable<js.Expression> emitStaticMethod(StaticMethod method) {
908 js.Expression holderIndex = js.number(method.holder.index); 908 js.Expression holderIndex = js.number(method.holder.index);
909 List<js.Expression> output = <js.Expression>[]; 909 List<js.Expression> output = <js.Expression>[];
(...skipping 14 matching lines...) Expand all
924 924
925 _addMethod(method); 925 _addMethod(method);
926 // TODO(floitsch): can there be anything else than a StaticDartMethod? 926 // TODO(floitsch): can there be anything else than a StaticDartMethod?
927 if (method is StaticDartMethod) { 927 if (method is StaticDartMethod) {
928 if (method.needsTearOff) { 928 if (method.needsTearOff) {
929 /// The format emitted is the same as for the parser specified at 929 /// The format emitted is the same as for the parser specified at
930 /// [parseFunctionDescriptorBoilerplate] except for the missing 930 /// [parseFunctionDescriptorBoilerplate] except for the missing
931 /// field whether the method is intercepted. 931 /// field whether the method is intercepted.
932 // [name, [function, callName, tearOffName, functionType, 932 // [name, [function, callName, tearOffName, functionType,
933 // stub1_name, stub1_callName, stub1_code, ...] 933 // stub1_name, stub1_callName, stub1_code, ...]
934 var data = [unparse(compiler, method.code)]; 934 var data = <js.Expression>[unparse(compiler, method.code)];
935 data.add(js.quoteName(method.callName)); 935 data.add(js.quoteName(method.callName));
936 data.add(js.quoteName(method.tearOffName)); 936 data.add(js.quoteName(method.tearOffName));
937 data.add(method.functionType); 937 data.add(method.functionType);
938 data.addAll(method.parameterStubs.expand(makeNameCallNameCodeTriplet)); 938 data.addAll(method.parameterStubs.expand(makeNameCallNameCodeTriplet));
939 if (method.canBeApplied) { 939 if (method.canBeApplied) {
940 data.add(js.number(method.requiredParameterCount)); 940 data.add(js.number(method.requiredParameterCount));
941 data.add(_encodeOptionalParameterDefaultValues(method)); 941 data.add(_encodeOptionalParameterDefaultValues(method));
942 } 942 }
943 return [ 943 return [
944 js.quoteName(method.name), 944 js.quoteName(method.name),
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after
1289 #eagerClasses; 1289 #eagerClasses;
1290 1290
1291 var end = Date.now(); 1291 var end = Date.now();
1292 // print('Setup: ' + (end - start) + ' ms.'); 1292 // print('Setup: ' + (end - start) + ' ms.');
1293 1293
1294 #invokeMain; // Start main. 1294 #invokeMain; // Start main.
1295 1295
1296 })(Date.now(), #code) 1296 })(Date.now(), #code)
1297 }"""; 1297 }""";
1298 } 1298 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698