OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 part of dart2js.semantics_visitor; | 5 part of dart2js.semantics_visitor; |
6 | 6 |
7 /// Interface for bulk handling of a [Node] in a semantic visitor. | 7 /// Interface for bulk handling of a [Node] in a semantic visitor. |
8 abstract class BulkHandle<R, A> { | 8 abstract class BulkHandle<R, A> { |
9 /// Handle [node] either regardless of semantics or to report that [node] is | 9 /// Handle [node] either regardless of semantics or to report that [node] is |
10 /// unhandled. [message] contains a message template for the latter case: | 10 /// unhandled. [message] contains a message template for the latter case: |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { | 216 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { |
217 | 217 |
218 R bulkHandlePrefix(Send node, A arg) { | 218 R bulkHandlePrefix(Send node, A arg) { |
219 return bulkHandleNode(node, "Prefix expression `#` unhandled.", arg); | 219 return bulkHandleNode(node, "Prefix expression `#` unhandled.", arg); |
220 } | 220 } |
221 | 221 |
222 @override | 222 @override |
223 R visitDynamicPropertyPrefix( | 223 R visitDynamicPropertyPrefix( |
224 Send node, | 224 Send node, |
225 Node receiver, | 225 Node receiver, |
| 226 Name name, |
226 IncDecOperator operator, | 227 IncDecOperator operator, |
227 Selector getterSelector, | |
228 Selector setterSelector, | |
229 A arg) { | 228 A arg) { |
230 return bulkHandlePrefix(node, arg); | 229 return bulkHandlePrefix(node, arg); |
231 } | 230 } |
232 | 231 |
233 R visitIfNotNullDynamicPropertyPrefix( | 232 R visitIfNotNullDynamicPropertyPrefix( |
234 Send node, | 233 Send node, |
235 Node receiver, | 234 Node receiver, |
| 235 Name name, |
236 IncDecOperator operator, | 236 IncDecOperator operator, |
237 Selector getterSelector, | |
238 Selector setterSelector, | |
239 A arg) { | 237 A arg) { |
240 return bulkHandlePrefix(node, arg); | 238 return bulkHandlePrefix(node, arg); |
241 } | 239 } |
242 | 240 |
243 @override | 241 @override |
244 R visitIndexPrefix( | 242 R visitIndexPrefix( |
245 Send node, | 243 Send node, |
246 Node receiver, | 244 Node receiver, |
247 Node index, | 245 Node index, |
248 IncDecOperator operator, | 246 IncDecOperator operator, |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
395 FunctionElement method, | 393 FunctionElement method, |
396 FunctionElement setter, | 394 FunctionElement setter, |
397 IncDecOperator operator, | 395 IncDecOperator operator, |
398 A arg) { | 396 A arg) { |
399 return bulkHandlePrefix(node, arg); | 397 return bulkHandlePrefix(node, arg); |
400 } | 398 } |
401 | 399 |
402 @override | 400 @override |
403 R visitThisPropertyPrefix( | 401 R visitThisPropertyPrefix( |
404 Send node, | 402 Send node, |
| 403 Name name, |
405 IncDecOperator operator, | 404 IncDecOperator operator, |
406 Selector getterSelector, | |
407 Selector setterSelector, | |
408 A arg) { | 405 A arg) { |
409 return bulkHandlePrefix(node, arg); | 406 return bulkHandlePrefix(node, arg); |
410 } | 407 } |
411 | 408 |
412 @override | 409 @override |
413 R visitTopLevelFieldPrefix( | 410 R visitTopLevelFieldPrefix( |
414 Send node, | 411 Send node, |
415 FieldElement field, | 412 FieldElement field, |
416 IncDecOperator operator, | 413 IncDecOperator operator, |
417 A arg) { | 414 A arg) { |
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
643 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { | 640 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { |
644 | 641 |
645 R bulkHandlePostfix(Send node, A arg) { | 642 R bulkHandlePostfix(Send node, A arg) { |
646 return bulkHandleNode(node, "Postfix expression `#` unhandled.", arg); | 643 return bulkHandleNode(node, "Postfix expression `#` unhandled.", arg); |
647 } | 644 } |
648 | 645 |
649 @override | 646 @override |
650 R visitDynamicPropertyPostfix( | 647 R visitDynamicPropertyPostfix( |
651 Send node, | 648 Send node, |
652 Node receiver, | 649 Node receiver, |
| 650 Name name, |
653 IncDecOperator operator, | 651 IncDecOperator operator, |
654 Selector getterSelector, | |
655 Selector setterSelector, | |
656 A arg) { | 652 A arg) { |
657 return bulkHandlePostfix(node, arg); | 653 return bulkHandlePostfix(node, arg); |
658 } | 654 } |
659 | 655 |
660 @override | 656 @override |
661 R visitIfNotNullDynamicPropertyPostfix( | 657 R visitIfNotNullDynamicPropertyPostfix( |
662 Send node, | 658 Send node, |
663 Node receiver, | 659 Node receiver, |
| 660 Name name, |
664 IncDecOperator operator, | 661 IncDecOperator operator, |
665 Selector getterSelector, | |
666 Selector setterSelector, | |
667 A arg) { | 662 A arg) { |
668 return bulkHandlePostfix(node, arg); | 663 return bulkHandlePostfix(node, arg); |
669 } | 664 } |
670 | 665 |
671 R visitIndexPostfix( | 666 R visitIndexPostfix( |
672 Send node, | 667 Send node, |
673 Node receiver, | 668 Node receiver, |
674 Node index, | 669 Node index, |
675 IncDecOperator operator, | 670 IncDecOperator operator, |
676 A arg) { | 671 A arg) { |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
822 FunctionElement method, | 817 FunctionElement method, |
823 FunctionElement setter, | 818 FunctionElement setter, |
824 IncDecOperator operator, | 819 IncDecOperator operator, |
825 A arg) { | 820 A arg) { |
826 return bulkHandlePostfix(node, arg); | 821 return bulkHandlePostfix(node, arg); |
827 } | 822 } |
828 | 823 |
829 @override | 824 @override |
830 R visitThisPropertyPostfix( | 825 R visitThisPropertyPostfix( |
831 Send node, | 826 Send node, |
| 827 Name name, |
832 IncDecOperator operator, | 828 IncDecOperator operator, |
833 Selector getterSelector, | |
834 Selector setterSelector, | |
835 A arg) { | 829 A arg) { |
836 return bulkHandlePostfix(node, arg); | 830 return bulkHandlePostfix(node, arg); |
837 } | 831 } |
838 | 832 |
839 @override | 833 @override |
840 R visitTopLevelFieldPostfix( | 834 R visitTopLevelFieldPostfix( |
841 Send node, | 835 Send node, |
842 FieldElement field, | 836 FieldElement field, |
843 IncDecOperator operator, | 837 IncDecOperator operator, |
844 A arg) { | 838 A arg) { |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1078 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { | 1072 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { |
1079 | 1073 |
1080 R bulkHandleCompound(Send node, A arg) { | 1074 R bulkHandleCompound(Send node, A arg) { |
1081 return bulkHandleNode(node, "Compound assignment `#` unhandled.", arg); | 1075 return bulkHandleNode(node, "Compound assignment `#` unhandled.", arg); |
1082 } | 1076 } |
1083 | 1077 |
1084 @override | 1078 @override |
1085 R visitDynamicPropertyCompound( | 1079 R visitDynamicPropertyCompound( |
1086 Send node, | 1080 Send node, |
1087 Node receiver, | 1081 Node receiver, |
| 1082 Name name, |
1088 AssignmentOperator operator, | 1083 AssignmentOperator operator, |
1089 Node rhs, | 1084 Node rhs, |
1090 Selector getterSelector, | |
1091 Selector setterSelector, | |
1092 A arg) { | 1085 A arg) { |
1093 return bulkHandleCompound(node, arg); | 1086 return bulkHandleCompound(node, arg); |
1094 } | 1087 } |
1095 | 1088 |
1096 @override | 1089 @override |
1097 R visitIfNotNullDynamicPropertyCompound( | 1090 R visitIfNotNullDynamicPropertyCompound( |
1098 Send node, | 1091 Send node, |
1099 Node receiver, | 1092 Node receiver, |
| 1093 Name name, |
1100 AssignmentOperator operator, | 1094 AssignmentOperator operator, |
1101 Node rhs, | 1095 Node rhs, |
1102 Selector getterSelector, | |
1103 Selector setterSelector, | |
1104 A arg) { | 1096 A arg) { |
1105 return bulkHandleCompound(node, arg); | 1097 return bulkHandleCompound(node, arg); |
1106 } | 1098 } |
1107 | 1099 |
1108 @override | 1100 @override |
1109 R visitLocalVariableCompound( | 1101 R visitLocalVariableCompound( |
1110 Send node, | 1102 Send node, |
1111 LocalVariableElement variable, | 1103 LocalVariableElement variable, |
1112 AssignmentOperator operator, | 1104 AssignmentOperator operator, |
1113 Node rhs, | 1105 Node rhs, |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1207 FunctionElement setter, | 1199 FunctionElement setter, |
1208 AssignmentOperator operator, | 1200 AssignmentOperator operator, |
1209 Node rhs, | 1201 Node rhs, |
1210 A arg) { | 1202 A arg) { |
1211 return bulkHandleCompound(node, arg); | 1203 return bulkHandleCompound(node, arg); |
1212 } | 1204 } |
1213 | 1205 |
1214 @override | 1206 @override |
1215 R visitThisPropertyCompound( | 1207 R visitThisPropertyCompound( |
1216 Send node, | 1208 Send node, |
| 1209 Name name, |
1217 AssignmentOperator operator, | 1210 AssignmentOperator operator, |
1218 Node rhs, | 1211 Node rhs, |
1219 Selector getterSelector, | |
1220 Selector setterSelector, | |
1221 A arg) { | 1212 A arg) { |
1222 return bulkHandleCompound(node, arg); | 1213 return bulkHandleCompound(node, arg); |
1223 } | 1214 } |
1224 | 1215 |
1225 @override | 1216 @override |
1226 R visitTopLevelFieldCompound( | 1217 R visitTopLevelFieldCompound( |
1227 Send node, | 1218 Send node, |
1228 FieldElement field, | 1219 FieldElement field, |
1229 AssignmentOperator operator, | 1220 AssignmentOperator operator, |
1230 Node rhs, | 1221 Node rhs, |
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1530 CallStructure callStructure, | 1521 CallStructure callStructure, |
1531 A arg) { | 1522 A arg) { |
1532 return bulkHandleInvoke(node, arg); | 1523 return bulkHandleInvoke(node, arg); |
1533 } | 1524 } |
1534 | 1525 |
1535 @override | 1526 @override |
1536 R visitExpressionInvoke( | 1527 R visitExpressionInvoke( |
1537 Send node, | 1528 Send node, |
1538 Node expression, | 1529 Node expression, |
1539 NodeList arguments, | 1530 NodeList arguments, |
1540 Selector selector, | 1531 CallStructure callStructure, |
1541 A arg) { | 1532 A arg) { |
1542 return bulkHandleInvoke(node, arg); | 1533 return bulkHandleInvoke(node, arg); |
1543 } | 1534 } |
1544 | 1535 |
1545 @override | 1536 @override |
1546 R visitLocalFunctionInvoke( | 1537 R visitLocalFunctionInvoke( |
1547 Send node, | 1538 Send node, |
1548 LocalFunctionElement function, | 1539 LocalFunctionElement function, |
1549 NodeList arguments, | 1540 NodeList arguments, |
1550 CallStructure callStructure, | 1541 CallStructure callStructure, |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1818 Send node, | 1809 Send node, |
1819 ConstantExpression constant, | 1810 ConstantExpression constant, |
1820 A arg) { | 1811 A arg) { |
1821 return bulkHandleGet(node, arg); | 1812 return bulkHandleGet(node, arg); |
1822 } | 1813 } |
1823 | 1814 |
1824 @override | 1815 @override |
1825 R visitDynamicPropertyGet( | 1816 R visitDynamicPropertyGet( |
1826 Send node, | 1817 Send node, |
1827 Node receiver, | 1818 Node receiver, |
1828 Selector selector, | 1819 Name name, |
1829 A arg) { | 1820 A arg) { |
1830 return bulkHandleGet(node, arg); | 1821 return bulkHandleGet(node, arg); |
1831 } | 1822 } |
1832 | 1823 |
1833 @override | 1824 @override |
1834 R visitIfNotNullDynamicPropertyGet( | 1825 R visitIfNotNullDynamicPropertyGet( |
1835 Send node, | 1826 Send node, |
1836 Node receiver, | 1827 Node receiver, |
1837 Selector selector, | 1828 Name name, |
1838 A arg) { | 1829 A arg) { |
1839 return bulkHandleGet(node, arg); | 1830 return bulkHandleGet(node, arg); |
1840 } | 1831 } |
1841 | 1832 |
1842 @override | 1833 @override |
1843 R visitDynamicTypeLiteralGet( | 1834 R visitDynamicTypeLiteralGet( |
1844 Send node, | 1835 Send node, |
1845 ConstantExpression constant, | 1836 ConstantExpression constant, |
1846 A arg) { | 1837 A arg) { |
1847 return bulkHandleGet(node, arg); | 1838 return bulkHandleGet(node, arg); |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1920 } | 1911 } |
1921 | 1912 |
1922 @override | 1913 @override |
1923 R visitThisGet(Identifier node, A arg) { | 1914 R visitThisGet(Identifier node, A arg) { |
1924 return bulkHandleGet(node, arg); | 1915 return bulkHandleGet(node, arg); |
1925 } | 1916 } |
1926 | 1917 |
1927 @override | 1918 @override |
1928 R visitThisPropertyGet( | 1919 R visitThisPropertyGet( |
1929 Send node, | 1920 Send node, |
1930 Selector selector, | 1921 Name name, |
1931 A arg) { | 1922 A arg) { |
1932 return bulkHandleGet(node, arg); | 1923 return bulkHandleGet(node, arg); |
1933 } | 1924 } |
1934 | 1925 |
1935 @override | 1926 @override |
1936 R visitTopLevelFieldGet( | 1927 R visitTopLevelFieldGet( |
1937 Send node, | 1928 Send node, |
1938 FieldElement field, | 1929 FieldElement field, |
1939 A arg) { | 1930 A arg) { |
1940 return bulkHandleGet(node, arg); | 1931 return bulkHandleGet(node, arg); |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2030 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { | 2021 implements SemanticSendVisitor<R, A>, BulkHandle<R, A> { |
2031 | 2022 |
2032 R bulkHandleSet(Send node, A arg) { | 2023 R bulkHandleSet(Send node, A arg) { |
2033 return bulkHandleNode(node, "Assignment `#` unhandled.", arg); | 2024 return bulkHandleNode(node, "Assignment `#` unhandled.", arg); |
2034 } | 2025 } |
2035 | 2026 |
2036 @override | 2027 @override |
2037 R visitDynamicPropertySet( | 2028 R visitDynamicPropertySet( |
2038 SendSet node, | 2029 SendSet node, |
2039 Node receiver, | 2030 Node receiver, |
2040 Selector selector, | 2031 Name name, |
2041 Node rhs, | 2032 Node rhs, |
2042 A arg) { | 2033 A arg) { |
2043 return bulkHandleSet(node, arg); | 2034 return bulkHandleSet(node, arg); |
2044 } | 2035 } |
2045 | 2036 |
2046 @override | 2037 @override |
2047 R visitIfNotNullDynamicPropertySet( | 2038 R visitIfNotNullDynamicPropertySet( |
2048 SendSet node, | 2039 SendSet node, |
2049 Node receiver, | 2040 Node receiver, |
2050 Selector selector, | 2041 Name name, |
2051 Node rhs, | 2042 Node rhs, |
2052 A arg) { | 2043 A arg) { |
2053 return bulkHandleSet(node, arg); | 2044 return bulkHandleSet(node, arg); |
2054 } | 2045 } |
2055 | 2046 |
2056 @override | 2047 @override |
2057 R visitLocalVariableSet( | 2048 R visitLocalVariableSet( |
2058 SendSet node, | 2049 SendSet node, |
2059 LocalVariableElement variable, | 2050 LocalVariableElement variable, |
2060 Node rhs, | 2051 Node rhs, |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2103 SendSet node, | 2094 SendSet node, |
2104 FunctionElement setter, | 2095 FunctionElement setter, |
2105 Node rhs, | 2096 Node rhs, |
2106 A arg) { | 2097 A arg) { |
2107 return bulkHandleSet(node, arg); | 2098 return bulkHandleSet(node, arg); |
2108 } | 2099 } |
2109 | 2100 |
2110 @override | 2101 @override |
2111 R visitThisPropertySet( | 2102 R visitThisPropertySet( |
2112 SendSet node, | 2103 SendSet node, |
2113 Selector selector, | 2104 Name name, |
2114 Node rhs, | 2105 Node rhs, |
2115 A arg) { | 2106 A arg) { |
2116 return bulkHandleSet(node, arg); | 2107 return bulkHandleSet(node, arg); |
2117 } | 2108 } |
2118 | 2109 |
2119 @override | 2110 @override |
2120 R visitTopLevelFieldSet( | 2111 R visitTopLevelFieldSet( |
2121 SendSet node, | 2112 SendSet node, |
2122 FieldElement field, | 2113 FieldElement field, |
2123 Node rhs, | 2114 Node rhs, |
(...skipping 2136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4260 CallStructure callStructure, | 4251 CallStructure callStructure, |
4261 A arg) { | 4252 A arg) { |
4262 apply(arguments, arg); | 4253 apply(arguments, arg); |
4263 return null; | 4254 return null; |
4264 } | 4255 } |
4265 | 4256 |
4266 @override | 4257 @override |
4267 R visitDynamicPropertyCompound( | 4258 R visitDynamicPropertyCompound( |
4268 Send node, | 4259 Send node, |
4269 Node receiver, | 4260 Node receiver, |
| 4261 Name name, |
4270 AssignmentOperator operator, | 4262 AssignmentOperator operator, |
4271 Node rhs, | 4263 Node rhs, |
4272 Selector getterSelector, | |
4273 Selector setterSelector, | |
4274 A arg) { | 4264 A arg) { |
4275 apply(receiver, arg); | 4265 apply(receiver, arg); |
4276 apply(rhs, arg); | 4266 apply(rhs, arg); |
4277 return null; | 4267 return null; |
4278 } | 4268 } |
4279 | 4269 |
4280 @override | 4270 @override |
4281 R visitIfNotNullDynamicPropertyCompound( | 4271 R visitIfNotNullDynamicPropertyCompound( |
4282 Send node, | 4272 Send node, |
4283 Node receiver, | 4273 Node receiver, |
| 4274 Name name, |
4284 AssignmentOperator operator, | 4275 AssignmentOperator operator, |
4285 Node rhs, | 4276 Node rhs, |
4286 Selector getterSelector, | |
4287 Selector setterSelector, | |
4288 A arg) { | 4277 A arg) { |
4289 apply(receiver, arg); | 4278 apply(receiver, arg); |
4290 apply(rhs, arg); | 4279 apply(rhs, arg); |
4291 return null; | 4280 return null; |
4292 } | 4281 } |
4293 | 4282 |
4294 @override | 4283 @override |
4295 R visitDynamicPropertyGet( | 4284 R visitDynamicPropertyGet( |
4296 Send node, | 4285 Send node, |
4297 Node receiver, | 4286 Node receiver, |
4298 Selector selector, | 4287 Name name, |
4299 A arg) { | 4288 A arg) { |
4300 apply(receiver, arg); | 4289 apply(receiver, arg); |
4301 return null; | 4290 return null; |
4302 } | 4291 } |
4303 | 4292 |
4304 @override | 4293 @override |
4305 R visitIfNotNullDynamicPropertyGet( | 4294 R visitIfNotNullDynamicPropertyGet( |
4306 Send node, | 4295 Send node, |
4307 Node receiver, | 4296 Node receiver, |
4308 Selector selector, | 4297 Name name, |
4309 A arg) { | 4298 A arg) { |
4310 apply(receiver, arg); | 4299 apply(receiver, arg); |
4311 return null; | 4300 return null; |
4312 } | 4301 } |
4313 | 4302 |
4314 @override | 4303 @override |
4315 R visitDynamicPropertyInvoke( | 4304 R visitDynamicPropertyInvoke( |
4316 Send node, | 4305 Send node, |
4317 Node receiver, | 4306 Node receiver, |
4318 NodeList arguments, | 4307 NodeList arguments, |
(...skipping 13 matching lines...) Expand all Loading... |
4332 A arg) { | 4321 A arg) { |
4333 apply(receiver, arg); | 4322 apply(receiver, arg); |
4334 apply(arguments, arg); | 4323 apply(arguments, arg); |
4335 return null; | 4324 return null; |
4336 } | 4325 } |
4337 | 4326 |
4338 @override | 4327 @override |
4339 R visitDynamicPropertyPostfix( | 4328 R visitDynamicPropertyPostfix( |
4340 Send node, | 4329 Send node, |
4341 Node receiver, | 4330 Node receiver, |
| 4331 Name name, |
4342 IncDecOperator operator, | 4332 IncDecOperator operator, |
4343 Selector getterSelector, | |
4344 Selector setterSelector, | |
4345 A arg) { | 4333 A arg) { |
4346 apply(receiver, arg); | 4334 apply(receiver, arg); |
4347 return null; | 4335 return null; |
4348 } | 4336 } |
4349 | 4337 |
4350 @override | 4338 @override |
4351 R visitIfNotNullDynamicPropertyPostfix( | 4339 R visitIfNotNullDynamicPropertyPostfix( |
4352 Send node, | 4340 Send node, |
4353 Node receiver, | 4341 Node receiver, |
| 4342 Name name, |
4354 IncDecOperator operator, | 4343 IncDecOperator operator, |
4355 Selector getterSelector, | |
4356 Selector setterSelector, | |
4357 A arg) { | 4344 A arg) { |
4358 apply(receiver, arg); | 4345 apply(receiver, arg); |
4359 return null; | 4346 return null; |
4360 } | 4347 } |
4361 | 4348 |
4362 @override | 4349 @override |
4363 R visitDynamicPropertyPrefix( | 4350 R visitDynamicPropertyPrefix( |
4364 Send node, | 4351 Send node, |
4365 Node receiver, | 4352 Node receiver, |
| 4353 Name name, |
4366 IncDecOperator operator, | 4354 IncDecOperator operator, |
4367 Selector getterSelector, | |
4368 Selector setterSelector, | |
4369 A arg) { | 4355 A arg) { |
4370 apply(receiver, arg); | 4356 apply(receiver, arg); |
4371 return null; | 4357 return null; |
4372 } | 4358 } |
4373 | 4359 |
4374 @override | 4360 @override |
4375 R visitIfNotNullDynamicPropertyPrefix( | 4361 R visitIfNotNullDynamicPropertyPrefix( |
4376 Send node, | 4362 Send node, |
4377 Node receiver, | 4363 Node receiver, |
| 4364 Name name, |
4378 IncDecOperator operator, | 4365 IncDecOperator operator, |
4379 Selector getterSelector, | |
4380 Selector setterSelector, | |
4381 A arg) { | 4366 A arg) { |
4382 apply(receiver, arg); | 4367 apply(receiver, arg); |
4383 return null; | 4368 return null; |
4384 } | 4369 } |
4385 | 4370 |
4386 @override | 4371 @override |
4387 R visitDynamicPropertySet( | 4372 R visitDynamicPropertySet( |
4388 SendSet node, | 4373 SendSet node, |
4389 Node receiver, | 4374 Node receiver, |
4390 Selector selector, | 4375 Name name, |
4391 Node rhs, | 4376 Node rhs, |
4392 A arg) { | 4377 A arg) { |
4393 apply(receiver, arg); | 4378 apply(receiver, arg); |
4394 apply(rhs, arg); | 4379 apply(rhs, arg); |
4395 return null; | 4380 return null; |
4396 } | 4381 } |
4397 | 4382 |
4398 @override | 4383 @override |
4399 R visitIfNotNullDynamicPropertySet( | 4384 R visitIfNotNullDynamicPropertySet( |
4400 SendSet node, | 4385 SendSet node, |
4401 Node receiver, | 4386 Node receiver, |
4402 Selector selector, | 4387 Name name, |
4403 Node rhs, | 4388 Node rhs, |
4404 A arg) { | 4389 A arg) { |
4405 apply(receiver, arg); | 4390 apply(receiver, arg); |
4406 apply(rhs, arg); | 4391 apply(rhs, arg); |
4407 return null; | 4392 return null; |
4408 } | 4393 } |
4409 | 4394 |
4410 @override | 4395 @override |
4411 R visitDynamicTypeLiteralCompound( | 4396 R visitDynamicTypeLiteralCompound( |
4412 Send node, | 4397 Send node, |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4464 apply(left, arg); | 4449 apply(left, arg); |
4465 apply(right, arg); | 4450 apply(right, arg); |
4466 return null; | 4451 return null; |
4467 } | 4452 } |
4468 | 4453 |
4469 @override | 4454 @override |
4470 R visitExpressionInvoke( | 4455 R visitExpressionInvoke( |
4471 Send node, | 4456 Send node, |
4472 Node expression, | 4457 Node expression, |
4473 NodeList arguments, | 4458 NodeList arguments, |
4474 Selector selector, | 4459 CallStructure callStructure, |
4475 A arg) { | 4460 A arg) { |
4476 apply(expression, arg); | 4461 apply(expression, arg); |
4477 apply(arguments, arg); | 4462 apply(arguments, arg); |
4478 return null; | 4463 return null; |
4479 } | 4464 } |
4480 | 4465 |
4481 @override | 4466 @override |
4482 R visitIndex( | 4467 R visitIndex( |
4483 Send node, | 4468 Send node, |
4484 Node receiver, | 4469 Node receiver, |
(...skipping 768 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5253 NodeList arguments, | 5238 NodeList arguments, |
5254 CallStructure callStructure, | 5239 CallStructure callStructure, |
5255 A arg) { | 5240 A arg) { |
5256 apply(arguments, arg); | 5241 apply(arguments, arg); |
5257 return null; | 5242 return null; |
5258 } | 5243 } |
5259 | 5244 |
5260 @override | 5245 @override |
5261 R visitThisPropertyCompound( | 5246 R visitThisPropertyCompound( |
5262 Send node, | 5247 Send node, |
| 5248 Name name, |
5263 AssignmentOperator operator, | 5249 AssignmentOperator operator, |
5264 Node rhs, | 5250 Node rhs, |
5265 Selector getterSelector, | |
5266 Selector setterSelector, | |
5267 A arg) { | 5251 A arg) { |
5268 apply(rhs, arg); | 5252 apply(rhs, arg); |
5269 return null; | 5253 return null; |
5270 } | 5254 } |
5271 | 5255 |
5272 @override | 5256 @override |
5273 R visitThisPropertyGet( | 5257 R visitThisPropertyGet( |
5274 Send node, | 5258 Send node, |
5275 Selector selector, | 5259 Name name, |
5276 A arg) { | 5260 A arg) { |
5277 return null; | 5261 return null; |
5278 } | 5262 } |
5279 | 5263 |
5280 @override | 5264 @override |
5281 R visitThisPropertyInvoke( | 5265 R visitThisPropertyInvoke( |
5282 Send node, | 5266 Send node, |
5283 NodeList arguments, | 5267 NodeList arguments, |
5284 Selector selector, | 5268 Selector selector, |
5285 A arg) { | 5269 A arg) { |
5286 apply(arguments, arg); | 5270 apply(arguments, arg); |
5287 return null; | 5271 return null; |
5288 } | 5272 } |
5289 | 5273 |
5290 @override | 5274 @override |
5291 R visitThisPropertyPostfix( | 5275 R visitThisPropertyPostfix( |
5292 Send node, | 5276 Send node, |
| 5277 Name name, |
5293 IncDecOperator operator, | 5278 IncDecOperator operator, |
5294 Selector getterSelector, | |
5295 Selector setterSelector, | |
5296 A arg) { | 5279 A arg) { |
5297 return null; | 5280 return null; |
5298 } | 5281 } |
5299 | 5282 |
5300 @override | 5283 @override |
5301 R visitThisPropertyPrefix( | 5284 R visitThisPropertyPrefix( |
5302 Send node, | 5285 Send node, |
| 5286 Name name, |
5303 IncDecOperator operator, | 5287 IncDecOperator operator, |
5304 Selector getterSelector, | |
5305 Selector setterSelector, | |
5306 A arg) { | 5288 A arg) { |
5307 return null; | 5289 return null; |
5308 } | 5290 } |
5309 | 5291 |
5310 @override | 5292 @override |
5311 R visitThisPropertySet( | 5293 R visitThisPropertySet( |
5312 SendSet node, | 5294 SendSet node, |
5313 Selector selector, | 5295 Name name, |
5314 Node rhs, | 5296 Node rhs, |
5315 A arg) { | 5297 A arg) { |
5316 apply(rhs, arg); | 5298 apply(rhs, arg); |
5317 return null; | 5299 return null; |
5318 } | 5300 } |
5319 | 5301 |
5320 @override | 5302 @override |
5321 R visitTopLevelFieldCompound( | 5303 R visitTopLevelFieldCompound( |
5322 Send node, | 5304 Send node, |
5323 FieldElement field, | 5305 FieldElement field, |
(...skipping 2751 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8075 /// `visitThisPropertyY` methods for by delegating calls to `handleDynamicX` | 8057 /// `visitThisPropertyY` methods for by delegating calls to `handleDynamicX` |
8076 /// methods, providing `null` as the receiver for the this properties. | 8058 /// methods, providing `null` as the receiver for the this properties. |
8077 /// | 8059 /// |
8078 /// This mixin is useful for the cases where dynamic and this properties are | 8060 /// This mixin is useful for the cases where dynamic and this properties are |
8079 /// handled uniformly. | 8061 /// handled uniformly. |
8080 abstract class BaseImplementationOfDynamicsMixin<R, A> | 8062 abstract class BaseImplementationOfDynamicsMixin<R, A> |
8081 implements SemanticSendVisitor<R, A> { | 8063 implements SemanticSendVisitor<R, A> { |
8082 R handleDynamicGet( | 8064 R handleDynamicGet( |
8083 Send node, | 8065 Send node, |
8084 Node receiver, | 8066 Node receiver, |
8085 Selector selector, | 8067 Name name, |
8086 A arg); | 8068 A arg); |
8087 | 8069 |
8088 R handleDynamicInvoke( | 8070 R handleDynamicInvoke( |
8089 Send node, | 8071 Send node, |
8090 Node receiver, | 8072 Node receiver, |
8091 NodeList arguments, | 8073 NodeList arguments, |
8092 Selector selector, | 8074 Selector selector, |
8093 A arg); | 8075 A arg); |
8094 | 8076 |
8095 R handleDynamicSet( | 8077 R handleDynamicSet( |
8096 SendSet node, | 8078 SendSet node, |
8097 Node receiver, | 8079 Node receiver, |
8098 Selector selector, | 8080 Name name, |
8099 Node rhs, | 8081 Node rhs, |
8100 A arg); | 8082 A arg); |
8101 | 8083 |
8102 @override | 8084 @override |
8103 R visitDynamicPropertyGet( | 8085 R visitDynamicPropertyGet( |
8104 Send node, | 8086 Send node, |
8105 Node receiver, | 8087 Node receiver, |
8106 Selector selector, | 8088 Name name, |
8107 A arg) { | 8089 A arg) { |
8108 return handleDynamicGet(node, receiver, selector, arg); | 8090 return handleDynamicGet(node, receiver, name, arg); |
8109 } | 8091 } |
8110 | 8092 |
8111 @override | 8093 @override |
8112 R visitIfNotNullDynamicPropertyGet( | 8094 R visitIfNotNullDynamicPropertyGet( |
8113 Send node, | 8095 Send node, |
8114 Node receiver, | 8096 Node receiver, |
8115 Selector selector, | 8097 Name name, |
8116 A arg) { | 8098 A arg) { |
8117 // TODO(johnniwinther): should these redirect to handleDynamicX? | 8099 // TODO(johnniwinther): should these redirect to handleDynamicX? |
8118 return handleDynamicGet(node, receiver, selector, arg); | 8100 return handleDynamicGet(node, receiver, name, arg); |
8119 } | 8101 } |
8120 | 8102 |
8121 @override | 8103 @override |
8122 R visitDynamicPropertyInvoke( | 8104 R visitDynamicPropertyInvoke( |
8123 Send node, | 8105 Send node, |
8124 Node receiver, | 8106 Node receiver, |
8125 NodeList arguments, | 8107 NodeList arguments, |
8126 Selector selector, | 8108 Selector selector, |
8127 A arg) { | 8109 A arg) { |
8128 return handleDynamicInvoke(node, receiver, arguments, selector, arg); | 8110 return handleDynamicInvoke(node, receiver, arguments, selector, arg); |
8129 } | 8111 } |
8130 | 8112 |
8131 @override | 8113 @override |
8132 R visitIfNotNullDynamicPropertyInvoke( | 8114 R visitIfNotNullDynamicPropertyInvoke( |
8133 Send node, | 8115 Send node, |
8134 Node receiver, | 8116 Node receiver, |
8135 NodeList arguments, | 8117 NodeList arguments, |
8136 Selector selector, | 8118 Selector selector, |
8137 A arg) { | 8119 A arg) { |
8138 return handleDynamicInvoke(node, receiver, arguments, selector, arg); | 8120 return handleDynamicInvoke(node, receiver, arguments, selector, arg); |
8139 } | 8121 } |
8140 | 8122 |
8141 @override | 8123 @override |
8142 R visitDynamicPropertySet( | 8124 R visitDynamicPropertySet( |
8143 SendSet node, | 8125 SendSet node, |
8144 Node receiver, | 8126 Node receiver, |
8145 Selector selector, | 8127 Name name, |
8146 Node rhs, | 8128 Node rhs, |
8147 A arg) { | 8129 A arg) { |
8148 return handleDynamicSet(node, receiver, selector, rhs, arg); | 8130 return handleDynamicSet(node, receiver, name, rhs, arg); |
8149 } | 8131 } |
8150 | 8132 |
8151 @override | 8133 @override |
8152 R visitIfNotNullDynamicPropertySet( | 8134 R visitIfNotNullDynamicPropertySet( |
8153 SendSet node, | 8135 SendSet node, |
8154 Node receiver, | 8136 Node receiver, |
8155 Selector selector, | 8137 Name name, |
8156 Node rhs, | 8138 Node rhs, |
8157 A arg) { | 8139 A arg) { |
8158 return handleDynamicSet(node, receiver, selector, rhs, arg); | 8140 return handleDynamicSet(node, receiver, name, rhs, arg); |
8159 } | 8141 } |
8160 | 8142 |
8161 @override | 8143 @override |
8162 R visitThisPropertyGet( | 8144 R visitThisPropertyGet( |
8163 Send node, | 8145 Send node, |
8164 Selector selector, | 8146 Name name, |
8165 A arg) { | 8147 A arg) { |
8166 return handleDynamicGet(node, null, selector, arg); | 8148 return handleDynamicGet(node, null, name, arg); |
8167 } | 8149 } |
8168 | 8150 |
8169 @override | 8151 @override |
8170 R visitThisPropertyInvoke( | 8152 R visitThisPropertyInvoke( |
8171 Send node, | 8153 Send node, |
8172 NodeList arguments, | 8154 NodeList arguments, |
8173 Selector selector, | 8155 Selector selector, |
8174 A arg) { | 8156 A arg) { |
8175 return handleDynamicInvoke(node, null, arguments, selector, arg); | 8157 return handleDynamicInvoke(node, null, arguments, selector, arg); |
8176 } | 8158 } |
8177 | 8159 |
8178 @override | 8160 @override |
8179 R visitThisPropertySet( | 8161 R visitThisPropertySet( |
8180 SendSet node, | 8162 SendSet node, |
8181 Selector selector, | 8163 Name name, |
8182 Node rhs, | 8164 Node rhs, |
8183 A arg) { | 8165 A arg) { |
8184 return handleDynamicSet(node, null, selector, rhs, arg); | 8166 return handleDynamicSet(node, null, name, rhs, arg); |
8185 } | 8167 } |
8186 } | 8168 } |
8187 | 8169 |
8188 /// Mixin that groups all compounds of `visitDynamicPropertyX` and | 8170 /// Mixin that groups all compounds of `visitDynamicPropertyX` and |
8189 /// `visitThisPropertyY` methods for by delegating calls to `handleDynamicX` | 8171 /// `visitThisPropertyY` methods for by delegating calls to `handleDynamicX` |
8190 /// methods, providing `null` as the receiver for the this properties. | 8172 /// methods, providing `null` as the receiver for the this properties. |
8191 /// | 8173 /// |
8192 /// This mixin is useful for the cases where dynamic and this properties are | 8174 /// This mixin is useful for the cases where dynamic and this properties are |
8193 /// handled uniformly. | 8175 /// handled uniformly. |
8194 abstract class BaseImplementationOfDynamicCompoundsMixin<R, A> | 8176 abstract class BaseImplementationOfDynamicCompoundsMixin<R, A> |
8195 implements SemanticSendVisitor<R, A> { | 8177 implements SemanticSendVisitor<R, A> { |
8196 R handleDynamicCompound( | 8178 R handleDynamicCompound( |
8197 Send node, | 8179 Send node, |
8198 Node receiver, | 8180 Node receiver, |
| 8181 Name name, |
8199 AssignmentOperator operator, | 8182 AssignmentOperator operator, |
8200 Node rhs, | 8183 Node rhs, |
8201 Selector getterSelector, | |
8202 Selector setterSelector, | |
8203 A arg); | 8184 A arg); |
8204 | 8185 |
8205 R handleDynamicPostfixPrefix( | 8186 R handleDynamicPostfixPrefix( |
8206 Send node, | 8187 Send node, |
8207 Node receiver, | 8188 Node receiver, |
| 8189 Name name, |
8208 IncDecOperator operator, | 8190 IncDecOperator operator, |
8209 Selector getterSelector, | |
8210 Selector setterSelector, | |
8211 A arg, | 8191 A arg, |
8212 {bool isPrefix}); | 8192 {bool isPrefix}); |
8213 | 8193 |
8214 R handleDynamicIndexPostfixPrefix( | 8194 R handleDynamicIndexPostfixPrefix( |
8215 Send node, | 8195 Send node, |
8216 Node receiver, | 8196 Node receiver, |
8217 Node index, | 8197 Node index, |
8218 IncDecOperator operator, | 8198 IncDecOperator operator, |
8219 A arg, | 8199 A arg, |
8220 {bool isPrefix}); | 8200 {bool isPrefix}); |
8221 | 8201 |
8222 @override | 8202 @override |
8223 R visitDynamicPropertyCompound( | 8203 R visitDynamicPropertyCompound( |
8224 Send node, | 8204 Send node, |
8225 Node receiver, | 8205 Node receiver, |
| 8206 Name name, |
8226 AssignmentOperator operator, | 8207 AssignmentOperator operator, |
8227 Node rhs, | 8208 Node rhs, |
8228 Selector getterSelector, | |
8229 Selector setterSelector, | |
8230 A arg) { | 8209 A arg) { |
8231 return handleDynamicCompound( | 8210 return handleDynamicCompound( |
8232 node, receiver, operator, rhs, getterSelector, setterSelector, arg); | 8211 node, receiver, name, operator, rhs, arg); |
8233 } | 8212 } |
8234 | 8213 |
8235 @override | 8214 @override |
8236 R visitIfNotNullDynamicPropertyCompound( | 8215 R visitIfNotNullDynamicPropertyCompound( |
8237 Send node, | 8216 Send node, |
8238 Node receiver, | 8217 Node receiver, |
| 8218 Name name, |
8239 AssignmentOperator operator, | 8219 AssignmentOperator operator, |
8240 Node rhs, | 8220 Node rhs, |
8241 Selector getterSelector, | |
8242 Selector setterSelector, | |
8243 A arg) { | 8221 A arg) { |
8244 return handleDynamicCompound( | 8222 return handleDynamicCompound( |
8245 node, receiver, operator, rhs, getterSelector, setterSelector, arg); | 8223 node, receiver, name, operator, rhs, arg); |
8246 } | 8224 } |
8247 | 8225 |
8248 @override | 8226 @override |
8249 R visitDynamicPropertyPostfix( | 8227 R visitDynamicPropertyPostfix( |
8250 Send node, | 8228 Send node, |
8251 Node receiver, | 8229 Node receiver, |
| 8230 Name name, |
8252 IncDecOperator operator, | 8231 IncDecOperator operator, |
8253 Selector getterSelector, | |
8254 Selector setterSelector, | |
8255 A arg) { | 8232 A arg) { |
8256 return handleDynamicPostfixPrefix( | 8233 return handleDynamicPostfixPrefix( |
8257 node, receiver, operator, | 8234 node, receiver, name, operator, arg, isPrefix: false); |
8258 getterSelector, setterSelector, arg, isPrefix: false); | |
8259 } | 8235 } |
8260 | 8236 |
8261 @override | 8237 @override |
8262 R visitIfNotNullDynamicPropertyPostfix( | 8238 R visitIfNotNullDynamicPropertyPostfix( |
8263 Send node, | 8239 Send node, |
8264 Node receiver, | 8240 Node receiver, |
| 8241 Name name, |
8265 IncDecOperator operator, | 8242 IncDecOperator operator, |
8266 Selector getterSelector, | |
8267 Selector setterSelector, | |
8268 A arg) { | 8243 A arg) { |
8269 return handleDynamicPostfixPrefix( | 8244 return handleDynamicPostfixPrefix( |
8270 node, receiver, operator, | 8245 node, receiver, name, operator, arg, isPrefix: false); |
8271 getterSelector, setterSelector, arg, isPrefix: false); | |
8272 } | 8246 } |
8273 | 8247 |
8274 @override | 8248 @override |
8275 R visitDynamicPropertyPrefix( | 8249 R visitDynamicPropertyPrefix( |
8276 Send node, | 8250 Send node, |
8277 Node receiver, | 8251 Node receiver, |
| 8252 Name name, |
8278 IncDecOperator operator, | 8253 IncDecOperator operator, |
8279 Selector getterSelector, | |
8280 Selector setterSelector, | |
8281 A arg) { | 8254 A arg) { |
8282 return handleDynamicPostfixPrefix( | 8255 return handleDynamicPostfixPrefix( |
8283 node, receiver, operator, | 8256 node, receiver, name, operator, arg, isPrefix: true); |
8284 getterSelector, setterSelector, arg, isPrefix: true); | |
8285 } | 8257 } |
8286 | 8258 |
8287 @override | 8259 @override |
8288 R visitIfNotNullDynamicPropertyPrefix( | 8260 R visitIfNotNullDynamicPropertyPrefix( |
8289 Send node, | 8261 Send node, |
8290 Node receiver, | 8262 Node receiver, |
| 8263 Name name, |
8291 IncDecOperator operator, | 8264 IncDecOperator operator, |
8292 Selector getterSelector, | |
8293 Selector setterSelector, | |
8294 A arg) { | 8265 A arg) { |
8295 return handleDynamicPostfixPrefix( | 8266 return handleDynamicPostfixPrefix( |
8296 node, receiver, operator, | 8267 node, receiver, name, operator, arg, isPrefix: true); |
8297 getterSelector, setterSelector, arg, isPrefix: true); | |
8298 } | 8268 } |
8299 | 8269 |
8300 @override | 8270 @override |
8301 R visitThisPropertyCompound( | 8271 R visitThisPropertyCompound( |
8302 Send node, | 8272 Send node, |
| 8273 Name name, |
8303 AssignmentOperator operator, | 8274 AssignmentOperator operator, |
8304 Node rhs, | 8275 Node rhs, |
8305 Selector getterSelector, | |
8306 Selector setterSelector, | |
8307 A arg) { | 8276 A arg) { |
8308 return handleDynamicCompound( | 8277 return handleDynamicCompound(node, null, name, operator, rhs, arg); |
8309 node, null, operator, rhs, getterSelector, setterSelector, arg); | |
8310 } | 8278 } |
8311 | 8279 |
8312 @override | 8280 @override |
8313 R visitThisPropertyPostfix( | 8281 R visitThisPropertyPostfix( |
8314 Send node, | 8282 Send node, |
| 8283 Name name, |
8315 IncDecOperator operator, | 8284 IncDecOperator operator, |
8316 Selector getterSelector, | |
8317 Selector setterSelector, | |
8318 A arg) { | 8285 A arg) { |
8319 return handleDynamicPostfixPrefix( | 8286 return handleDynamicPostfixPrefix( |
8320 node, null, operator, | 8287 node, null, name, operator, arg, isPrefix: false); |
8321 getterSelector, setterSelector, arg, isPrefix: false); | |
8322 } | 8288 } |
8323 | 8289 |
8324 @override | 8290 @override |
8325 R visitThisPropertyPrefix( | 8291 R visitThisPropertyPrefix( |
8326 Send node, | 8292 Send node, |
| 8293 Name name, |
8327 IncDecOperator operator, | 8294 IncDecOperator operator, |
8328 Selector getterSelector, | |
8329 Selector setterSelector, | |
8330 A arg) { | 8295 A arg) { |
8331 return handleDynamicPostfixPrefix( | 8296 return handleDynamicPostfixPrefix( |
8332 node, null, operator, | 8297 node, null, name, operator, arg, isPrefix: true); |
8333 getterSelector, setterSelector, arg, isPrefix: true); | |
8334 } | 8298 } |
8335 | 8299 |
8336 @override | 8300 @override |
8337 R visitIndexPostfix( | 8301 R visitIndexPostfix( |
8338 Send node, | 8302 Send node, |
8339 Node receiver, | 8303 Node receiver, |
8340 Node index, | 8304 Node index, |
8341 IncDecOperator operator, | 8305 IncDecOperator operator, |
8342 A arg) { | 8306 A arg) { |
8343 return handleDynamicIndexPostfixPrefix( | 8307 return handleDynamicIndexPostfixPrefix( |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8480 SendSet node, | 8444 SendSet node, |
8481 TypeVariableElement typeVariable, | 8445 TypeVariableElement typeVariable, |
8482 CompoundRhs rhs, | 8446 CompoundRhs rhs, |
8483 A arg); | 8447 A arg); |
8484 | 8448 |
8485 /// Handle a dynamic compounds, like `o.foo += 42` or `--o.foo`. [receiver] is | 8449 /// Handle a dynamic compounds, like `o.foo += 42` or `--o.foo`. [receiver] is |
8486 /// `null` for properties on `this`, like `--this.foo` or `--foo`. | 8450 /// `null` for properties on `this`, like `--this.foo` or `--foo`. |
8487 R handleDynamicCompounds( | 8451 R handleDynamicCompounds( |
8488 Send node, | 8452 Send node, |
8489 Node receiver, | 8453 Node receiver, |
| 8454 Name name, |
8490 CompoundRhs rhs, | 8455 CompoundRhs rhs, |
8491 Selector getterSelector, | |
8492 Selector setterSelector, | |
8493 A arg); | 8456 A arg); |
8494 | 8457 |
8495 R visitDynamicPropertyCompound( | 8458 R visitDynamicPropertyCompound( |
8496 Send node, | 8459 Send node, |
8497 Node receiver, | 8460 Node receiver, |
| 8461 Name name, |
8498 AssignmentOperator operator, | 8462 AssignmentOperator operator, |
8499 Node rhs, | 8463 Node rhs, |
8500 Selector getterSelector, | |
8501 Selector setterSelector, | |
8502 A arg) { | 8464 A arg) { |
8503 return handleDynamicCompounds( | 8465 return handleDynamicCompounds( |
8504 node, | 8466 node, |
8505 receiver, | 8467 receiver, |
| 8468 name, |
8506 new AssignmentCompound(operator, rhs), | 8469 new AssignmentCompound(operator, rhs), |
8507 getterSelector, | |
8508 setterSelector, | |
8509 arg); | 8470 arg); |
8510 } | 8471 } |
8511 | 8472 |
8512 R visitIfNotNullDynamicPropertyCompound( | 8473 R visitIfNotNullDynamicPropertyCompound( |
8513 Send node, | 8474 Send node, |
8514 Node receiver, | 8475 Node receiver, |
| 8476 Name name, |
8515 AssignmentOperator operator, | 8477 AssignmentOperator operator, |
8516 Node rhs, | 8478 Node rhs, |
8517 Selector getterSelector, | |
8518 Selector setterSelector, | |
8519 A arg) { | 8479 A arg) { |
8520 return handleDynamicCompounds( | 8480 return handleDynamicCompounds( |
8521 node, | 8481 node, |
8522 receiver, | 8482 receiver, |
| 8483 name, |
8523 new AssignmentCompound(operator, rhs), | 8484 new AssignmentCompound(operator, rhs), |
8524 getterSelector, | |
8525 setterSelector, | |
8526 arg); | 8485 arg); |
8527 } | 8486 } |
8528 | 8487 |
8529 @override | 8488 @override |
8530 R visitThisPropertyCompound( | 8489 R visitThisPropertyCompound( |
8531 Send node, | 8490 Send node, |
| 8491 Name name, |
8532 AssignmentOperator operator, | 8492 AssignmentOperator operator, |
8533 Node rhs, | 8493 Node rhs, |
8534 Selector getterSelector, | |
8535 Selector setterSelector, | |
8536 A arg) { | 8494 A arg) { |
8537 return handleDynamicCompounds( | 8495 return handleDynamicCompounds( |
8538 node, | 8496 node, |
8539 null, | 8497 null, |
| 8498 name, |
8540 new AssignmentCompound(operator, rhs), | 8499 new AssignmentCompound(operator, rhs), |
8541 getterSelector, | |
8542 setterSelector, | |
8543 arg); | 8500 arg); |
8544 } | 8501 } |
8545 | 8502 |
8546 @override | 8503 @override |
8547 R visitParameterCompound( | 8504 R visitParameterCompound( |
8548 Send node, | 8505 Send node, |
8549 ParameterElement parameter, | 8506 ParameterElement parameter, |
8550 AssignmentOperator operator, | 8507 AssignmentOperator operator, |
8551 Node rhs, | 8508 Node rhs, |
8552 A arg) { | 8509 A arg) { |
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8889 node, | 8846 node, |
8890 constant, | 8847 constant, |
8891 new AssignmentCompound(operator, rhs), | 8848 new AssignmentCompound(operator, rhs), |
8892 arg); | 8849 arg); |
8893 } | 8850 } |
8894 | 8851 |
8895 | 8852 |
8896 R visitDynamicPropertyPrefix( | 8853 R visitDynamicPropertyPrefix( |
8897 Send node, | 8854 Send node, |
8898 Node receiver, | 8855 Node receiver, |
| 8856 Name name, |
8899 IncDecOperator operator, | 8857 IncDecOperator operator, |
8900 Selector getterSelector, | |
8901 Selector setterSelector, | |
8902 A arg) { | 8858 A arg) { |
8903 return handleDynamicCompounds( | 8859 return handleDynamicCompounds( |
8904 node, | 8860 node, |
8905 receiver, | 8861 receiver, |
| 8862 name, |
8906 new IncDecCompound(CompoundKind.PREFIX, operator), | 8863 new IncDecCompound(CompoundKind.PREFIX, operator), |
8907 getterSelector, | |
8908 setterSelector, | |
8909 arg); | 8864 arg); |
8910 } | 8865 } |
8911 | 8866 |
8912 R visitIfNotNullDynamicPropertyPrefix( | 8867 R visitIfNotNullDynamicPropertyPrefix( |
8913 Send node, | 8868 Send node, |
8914 Node receiver, | 8869 Node receiver, |
| 8870 Name name, |
8915 IncDecOperator operator, | 8871 IncDecOperator operator, |
8916 Selector getterSelector, | |
8917 Selector setterSelector, | |
8918 A arg) { | 8872 A arg) { |
8919 return handleDynamicCompounds( | 8873 return handleDynamicCompounds( |
8920 node, | 8874 node, |
8921 receiver, | 8875 receiver, |
| 8876 name, |
8922 new IncDecCompound(CompoundKind.PREFIX, operator), | 8877 new IncDecCompound(CompoundKind.PREFIX, operator), |
8923 getterSelector, | |
8924 setterSelector, | |
8925 arg); | 8878 arg); |
8926 } | 8879 } |
8927 | 8880 |
8928 @override | 8881 @override |
8929 R visitParameterPrefix( | 8882 R visitParameterPrefix( |
8930 Send node, | 8883 Send node, |
8931 ParameterElement parameter, | 8884 ParameterElement parameter, |
8932 IncDecOperator operator, | 8885 IncDecOperator operator, |
8933 A arg) { | 8886 A arg) { |
8934 return handleLocalCompounds( | 8887 return handleLocalCompounds( |
(...skipping 28 matching lines...) Expand all Loading... |
8963 node, | 8916 node, |
8964 function, | 8917 function, |
8965 new IncDecCompound(CompoundKind.PREFIX, operator), | 8918 new IncDecCompound(CompoundKind.PREFIX, operator), |
8966 arg, | 8919 arg, |
8967 isSetterValid: false); | 8920 isSetterValid: false); |
8968 } | 8921 } |
8969 | 8922 |
8970 | 8923 |
8971 R visitThisPropertyPrefix( | 8924 R visitThisPropertyPrefix( |
8972 Send node, | 8925 Send node, |
| 8926 Name name, |
8973 IncDecOperator operator, | 8927 IncDecOperator operator, |
8974 Selector getterSelector, | |
8975 Selector setterSelector, | |
8976 A arg) { | 8928 A arg) { |
8977 return handleDynamicCompounds( | 8929 return handleDynamicCompounds( |
8978 node, | 8930 node, |
8979 null, | 8931 null, |
| 8932 name, |
8980 new IncDecCompound(CompoundKind.PREFIX, operator), | 8933 new IncDecCompound(CompoundKind.PREFIX, operator), |
8981 getterSelector, | |
8982 setterSelector, | |
8983 arg); | 8934 arg); |
8984 } | 8935 } |
8985 | 8936 |
8986 @override | 8937 @override |
8987 R visitStaticFieldPrefix( | 8938 R visitStaticFieldPrefix( |
8988 Send node, | 8939 Send node, |
8989 FieldElement field, | 8940 FieldElement field, |
8990 IncDecOperator operator, | 8941 IncDecOperator operator, |
8991 A arg) { | 8942 A arg) { |
8992 return handleStaticCompounds( | 8943 return handleStaticCompounds( |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9209 node, | 9160 node, |
9210 constant, | 9161 constant, |
9211 new IncDecCompound(CompoundKind.PREFIX, operator), | 9162 new IncDecCompound(CompoundKind.PREFIX, operator), |
9212 arg); | 9163 arg); |
9213 } | 9164 } |
9214 | 9165 |
9215 @override | 9166 @override |
9216 R visitDynamicPropertyPostfix( | 9167 R visitDynamicPropertyPostfix( |
9217 Send node, | 9168 Send node, |
9218 Node receiver, | 9169 Node receiver, |
| 9170 Name name, |
9219 IncDecOperator operator, | 9171 IncDecOperator operator, |
9220 Selector getterSelector, | |
9221 Selector setterSelector, | |
9222 A arg) { | 9172 A arg) { |
9223 return handleDynamicCompounds( | 9173 return handleDynamicCompounds( |
9224 node, | 9174 node, |
9225 receiver, | 9175 receiver, |
| 9176 name, |
9226 new IncDecCompound(CompoundKind.POSTFIX, operator), | 9177 new IncDecCompound(CompoundKind.POSTFIX, operator), |
9227 getterSelector, | |
9228 setterSelector, | |
9229 arg); | 9178 arg); |
9230 } | 9179 } |
9231 | 9180 |
9232 @override | 9181 @override |
9233 R visitIfNotNullDynamicPropertyPostfix( | 9182 R visitIfNotNullDynamicPropertyPostfix( |
9234 Send node, | 9183 Send node, |
9235 Node receiver, | 9184 Node receiver, |
| 9185 Name name, |
9236 IncDecOperator operator, | 9186 IncDecOperator operator, |
9237 Selector getterSelector, | |
9238 Selector setterSelector, | |
9239 A arg) { | 9187 A arg) { |
9240 return handleDynamicCompounds( | 9188 return handleDynamicCompounds( |
9241 node, | 9189 node, |
9242 receiver, | 9190 receiver, |
| 9191 name, |
9243 new IncDecCompound(CompoundKind.POSTFIX, operator), | 9192 new IncDecCompound(CompoundKind.POSTFIX, operator), |
9244 getterSelector, | |
9245 setterSelector, | |
9246 arg); | 9193 arg); |
9247 } | 9194 } |
9248 | 9195 |
9249 @override | 9196 @override |
9250 R visitParameterPostfix( | 9197 R visitParameterPostfix( |
9251 Send node, | 9198 Send node, |
9252 ParameterElement parameter, | 9199 ParameterElement parameter, |
9253 IncDecOperator operator, | 9200 IncDecOperator operator, |
9254 A arg) { | 9201 A arg) { |
9255 return handleLocalCompounds( | 9202 return handleLocalCompounds( |
(...skipping 28 matching lines...) Expand all Loading... |
9284 node, | 9231 node, |
9285 function, | 9232 function, |
9286 new IncDecCompound(CompoundKind.POSTFIX, operator), | 9233 new IncDecCompound(CompoundKind.POSTFIX, operator), |
9287 arg, | 9234 arg, |
9288 isSetterValid: false); | 9235 isSetterValid: false); |
9289 } | 9236 } |
9290 | 9237 |
9291 | 9238 |
9292 R visitThisPropertyPostfix( | 9239 R visitThisPropertyPostfix( |
9293 Send node, | 9240 Send node, |
| 9241 Name name, |
9294 IncDecOperator operator, | 9242 IncDecOperator operator, |
9295 Selector getterSelector, | |
9296 Selector setterSelector, | |
9297 A arg) { | 9243 A arg) { |
9298 return handleDynamicCompounds( | 9244 return handleDynamicCompounds( |
9299 node, | 9245 node, |
9300 null, | 9246 null, |
| 9247 name, |
9301 new IncDecCompound(CompoundKind.POSTFIX, operator), | 9248 new IncDecCompound(CompoundKind.POSTFIX, operator), |
9302 getterSelector, | |
9303 setterSelector, | |
9304 arg); | 9249 arg); |
9305 } | 9250 } |
9306 | 9251 |
9307 @override | 9252 @override |
9308 R visitStaticFieldPostfix( | 9253 R visitStaticFieldPostfix( |
9309 Send node, | 9254 Send node, |
9310 FieldElement field, | 9255 FieldElement field, |
9311 IncDecOperator operator, | 9256 IncDecOperator operator, |
9312 A arg) { | 9257 A arg) { |
9313 return handleStaticCompounds( | 9258 return handleStaticCompounds( |
(...skipping 1737 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11051 NewExpression node, | 10996 NewExpression node, |
11052 ConstructorElement constructor, | 10997 ConstructorElement constructor, |
11053 InterfaceType type, | 10998 InterfaceType type, |
11054 NodeList arguments, | 10999 NodeList arguments, |
11055 CallStructure callStructure, | 11000 CallStructure callStructure, |
11056 A arg) { | 11001 A arg) { |
11057 return handleConstructorInvoke( | 11002 return handleConstructorInvoke( |
11058 node, constructor, type, arguments, callStructure, arg); | 11003 node, constructor, type, arguments, callStructure, arg); |
11059 } | 11004 } |
11060 } | 11005 } |
OLD | NEW |