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 dart2js.js_emitter.full_emitter.container_builder; | 5 library dart2js.js_emitter.full_emitter.container_builder; |
6 | 6 |
7 import '../../constants/values.dart'; | 7 import '../../constants/values.dart'; |
8 import '../../elements/elements.dart' | 8 import '../../elements/elements.dart' |
9 show Element, MetadataAnnotation, MethodElement; | 9 show Element, MetadataAnnotation, MethodElement; |
10 import '../../elements/entities.dart'; | 10 import '../../elements/entities.dart'; |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 } | 112 } |
113 | 113 |
114 // On [requiredParameterCount], the lower bit is set if this method can be | 114 // On [requiredParameterCount], the lower bit is set if this method can be |
115 // called reflectively. | 115 // called reflectively. |
116 int requiredParameterCount = parameters.requiredParameters << 1; | 116 int requiredParameterCount = parameters.requiredParameters << 1; |
117 if (member.isGetter || member.isSetter) requiredParameterCount++; | 117 if (member.isGetter || member.isSetter) requiredParameterCount++; |
118 | 118 |
119 int optionalParameterCount = parameters.optionalParameters << 1; | 119 int optionalParameterCount = parameters.optionalParameters << 1; |
120 if (parameters.namedParameters.isNotEmpty) optionalParameterCount++; | 120 if (parameters.namedParameters.isNotEmpty) optionalParameterCount++; |
121 | 121 |
122 List tearOffInfo = [callSelectorString]; | 122 var tearOffInfo = <jsAst.Expression>[callSelectorString]; |
123 | 123 |
124 for (ParameterStubMethod stub in method.parameterStubs) { | 124 for (ParameterStubMethod stub in method.parameterStubs) { |
125 jsAst.Name invocationName = stub.name; | 125 jsAst.Name invocationName = stub.name; |
126 emitter.interceptorEmitter | 126 emitter.interceptorEmitter |
127 .recordMangledNameOfMemberMethod(member, invocationName); | 127 .recordMangledNameOfMemberMethod(member, invocationName); |
128 | 128 |
129 expressions.add(stub.code); | 129 expressions.add(stub.code); |
130 if (member.isInstanceMember) { | 130 if (member.isInstanceMember) { |
131 expressions.add(js.quoteName(invocationName)); | 131 expressions.add(js.quoteName(invocationName)); |
132 } | 132 } |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
185 jsAst.ArrayInitializer arrayInit = | 185 jsAst.ArrayInitializer arrayInit = |
186 new jsAst.ArrayInitializer(expressions.toList()); | 186 new jsAst.ArrayInitializer(expressions.toList()); |
187 compiler.dumpInfoTask | 187 compiler.dumpInfoTask |
188 .registerElementAst(member, builder.addProperty(name, arrayInit)); | 188 .registerElementAst(member, builder.addProperty(name, arrayInit)); |
189 } | 189 } |
190 | 190 |
191 void addMemberField(Field field, ClassBuilder builder) { | 191 void addMemberField(Field field, ClassBuilder builder) { |
192 // For now, do nothing. | 192 // For now, do nothing. |
193 } | 193 } |
194 } | 194 } |
OLD | NEW |