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

Side by Side Diff: pkg/compiler/lib/src/resolution/semantic_visitor_mixins.dart

Issue 1151163004: Implementation of null-aware operators. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 7 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) 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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 R visitDynamicPropertyPrefix( 79 R visitDynamicPropertyPrefix(
80 Send node, 80 Send node,
81 Node receiver, 81 Node receiver,
82 IncDecOperator operator, 82 IncDecOperator operator,
83 Selector getterSelector, 83 Selector getterSelector,
84 Selector setterSelector, 84 Selector setterSelector,
85 A arg) { 85 A arg) {
86 return bulkHandlePrefix(node, arg); 86 return bulkHandlePrefix(node, arg);
87 } 87 }
88 88
89 R visitIfNotNullDynamicPropertyPrefix(
90 Send node,
91 Node receiver,
92 IncDecOperator operator,
93 Selector getterSelector,
94 Selector setterSelector,
95 A arg) {
96 return bulkHandlePrefix(node, arg);
97 }
98
89 @override 99 @override
90 R visitIndexPrefix( 100 R visitIndexPrefix(
91 Send node, 101 Send node,
92 Node receiver, 102 Node receiver,
93 Node index, 103 Node index,
94 IncDecOperator operator, 104 IncDecOperator operator,
95 A arg) { 105 A arg) {
96 return bulkHandlePrefix(node, arg); 106 return bulkHandlePrefix(node, arg);
97 } 107 }
98 108
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
497 Send node, 507 Send node,
498 Node receiver, 508 Node receiver,
499 IncDecOperator operator, 509 IncDecOperator operator,
500 Selector getterSelector, 510 Selector getterSelector,
501 Selector setterSelector, 511 Selector setterSelector,
502 A arg) { 512 A arg) {
503 return bulkHandlePostfix(node, arg); 513 return bulkHandlePostfix(node, arg);
504 } 514 }
505 515
506 @override 516 @override
517 R visitIfNotNullDynamicPropertyPostfix(
518 Send node,
519 Node receiver,
520 IncDecOperator operator,
521 Selector getterSelector,
522 Selector setterSelector,
523 A arg) {
524 return bulkHandlePostfix(node, arg);
525 }
526
507 R visitIndexPostfix( 527 R visitIndexPostfix(
508 Send node, 528 Send node,
509 Node receiver, 529 Node receiver,
510 Node index, 530 Node index,
511 IncDecOperator operator, 531 IncDecOperator operator,
512 A arg) { 532 A arg) {
513 return bulkHandlePostfix(node, arg); 533 return bulkHandlePostfix(node, arg);
514 } 534 }
515 535
516 @override 536 @override
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
923 Node receiver, 943 Node receiver,
924 AssignmentOperator operator, 944 AssignmentOperator operator,
925 Node rhs, 945 Node rhs,
926 Selector getterSelector, 946 Selector getterSelector,
927 Selector setterSelector, 947 Selector setterSelector,
928 A arg) { 948 A arg) {
929 return bulkHandleCompound(node, arg); 949 return bulkHandleCompound(node, arg);
930 } 950 }
931 951
932 @override 952 @override
953 R visitIfNotNullDynamicPropertyCompound(
954 Send node,
955 Node receiver,
956 AssignmentOperator operator,
957 Node rhs,
958 Selector getterSelector,
959 Selector setterSelector,
960 A arg) {
961 return bulkHandleCompound(node, arg);
962 }
963
964 @override
933 R visitLocalVariableCompound( 965 R visitLocalVariableCompound(
934 Send node, 966 Send node,
935 LocalVariableElement variable, 967 LocalVariableElement variable,
936 AssignmentOperator operator, 968 AssignmentOperator operator,
937 Node rhs, 969 Node rhs,
938 A arg) { 970 A arg) {
939 return bulkHandleCompound(node, arg); 971 return bulkHandleCompound(node, arg);
940 } 972 }
941 973
942 @override 974 @override
(...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after
1330 R visitDynamicPropertyInvoke( 1362 R visitDynamicPropertyInvoke(
1331 Send node, 1363 Send node,
1332 Node receiver, 1364 Node receiver,
1333 NodeList arguments, 1365 NodeList arguments,
1334 Selector selector, 1366 Selector selector,
1335 A arg) { 1367 A arg) {
1336 return bulkHandleInvoke(node, arg); 1368 return bulkHandleInvoke(node, arg);
1337 } 1369 }
1338 1370
1339 @override 1371 @override
1372 R visitIfNotNullDynamicPropertyInvoke(
1373 Send node,
1374 Node receiver,
1375 NodeList arguments,
1376 Selector selector,
1377 A arg) {
1378 return bulkHandleInvoke(node, arg);
1379 }
1380
1381 @override
1340 R visitDynamicTypeLiteralInvoke( 1382 R visitDynamicTypeLiteralInvoke(
1341 Send node, 1383 Send node,
1342 ConstantExpression constant, 1384 ConstantExpression constant,
1343 NodeList arguments, 1385 NodeList arguments,
1344 CallStructure callStructure, 1386 CallStructure callStructure,
1345 A arg) { 1387 A arg) {
1346 return bulkHandleInvoke(node, arg); 1388 return bulkHandleInvoke(node, arg);
1347 } 1389 }
1348 1390
1349 @override 1391 @override
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
1628 @override 1670 @override
1629 R visitDynamicPropertyGet( 1671 R visitDynamicPropertyGet(
1630 Send node, 1672 Send node,
1631 Node receiver, 1673 Node receiver,
1632 Selector selector, 1674 Selector selector,
1633 A arg) { 1675 A arg) {
1634 return bulkHandleGet(node, arg); 1676 return bulkHandleGet(node, arg);
1635 } 1677 }
1636 1678
1637 @override 1679 @override
1680 R visitIfNotNullDynamicPropertyGet(
1681 Send node,
1682 Node receiver,
1683 Selector selector,
1684 A arg) {
1685 return bulkHandleGet(node, arg);
1686 }
1687
1688 @override
1638 R visitDynamicTypeLiteralGet( 1689 R visitDynamicTypeLiteralGet(
1639 Send node, 1690 Send node,
1640 ConstantExpression constant, 1691 ConstantExpression constant,
1641 A arg) { 1692 A arg) {
1642 return bulkHandleGet(node, arg); 1693 return bulkHandleGet(node, arg);
1643 } 1694 }
1644 1695
1645 @override 1696 @override
1646 R visitLocalFunctionGet( 1697 R visitLocalFunctionGet(
1647 Send node, 1698 Send node,
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
1832 R visitDynamicPropertySet( 1883 R visitDynamicPropertySet(
1833 SendSet node, 1884 SendSet node,
1834 Node receiver, 1885 Node receiver,
1835 Selector selector, 1886 Selector selector,
1836 Node rhs, 1887 Node rhs,
1837 A arg) { 1888 A arg) {
1838 return bulkHandleSet(node, arg); 1889 return bulkHandleSet(node, arg);
1839 } 1890 }
1840 1891
1841 @override 1892 @override
1893 R visitIfNotNullDynamicPropertySet(
1894 SendSet node,
1895 Node receiver,
1896 Selector selector,
1897 Node rhs,
1898 A arg) {
1899 return bulkHandleSet(node, arg);
1900 }
1901
1902 @override
1842 R visitLocalVariableSet( 1903 R visitLocalVariableSet(
1843 SendSet node, 1904 SendSet node,
1844 LocalVariableElement variable, 1905 LocalVariableElement variable,
1845 Node rhs, 1906 Node rhs,
1846 A arg) { 1907 A arg) {
1847 return bulkHandleSet(node, arg); 1908 return bulkHandleSet(node, arg);
1848 } 1909 }
1849 1910
1850 @override 1911 @override
1851 R visitParameterSet( 1912 R visitParameterSet(
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
2375 @override 2436 @override
2376 R visitIsNot( 2437 R visitIsNot(
2377 Send node, 2438 Send node,
2378 Node expression, 2439 Node expression,
2379 DartType type, 2440 DartType type,
2380 A arg) { 2441 A arg) {
2381 return bulkHandleNode(node, 'Is not test `#` unhandled.', arg); 2442 return bulkHandleNode(node, 'Is not test `#` unhandled.', arg);
2382 } 2443 }
2383 2444
2384 @override 2445 @override
2446 R visitIfNull(
2447 Send node,
2448 Node left,
2449 Node right,
2450 A arg) {
2451 return bulkHandleNode(node, 'If-null (Lazy ?? `#`) unhandled.', arg);
2452 }
2453
2454 @override
2385 R visitLogicalAnd( 2455 R visitLogicalAnd(
2386 Send node, 2456 Send node,
2387 Node left, 2457 Node left,
2388 Node right, 2458 Node right,
2389 A arg) { 2459 A arg) {
2390 return bulkHandleNode(node, 'Lazy and `#` unhandled.', arg); 2460 return bulkHandleNode(node, 'Lazy and `#` unhandled.', arg);
2391 } 2461 }
2392 2462
2393 @override 2463 @override
2394 R visitLogicalOr( 2464 R visitLogicalOr(
(...skipping 1438 matching lines...) Expand 10 before | Expand all | Expand 10 after
3833 Node rhs, 3903 Node rhs,
3834 Selector getterSelector, 3904 Selector getterSelector,
3835 Selector setterSelector, 3905 Selector setterSelector,
3836 A arg) { 3906 A arg) {
3837 apply(receiver, arg); 3907 apply(receiver, arg);
3838 apply(rhs, arg); 3908 apply(rhs, arg);
3839 return null; 3909 return null;
3840 } 3910 }
3841 3911
3842 @override 3912 @override
3913 R visitIfNotNullDynamicPropertyCompound(
3914 Send node,
3915 Node receiver,
3916 AssignmentOperator operator,
3917 Node rhs,
3918 Selector getterSelector,
3919 Selector setterSelector,
3920 A arg) {
3921 apply(receiver, arg);
3922 apply(rhs, arg);
3923 return null;
3924 }
3925
3926 @override
3843 R visitDynamicPropertyGet( 3927 R visitDynamicPropertyGet(
3844 Send node, 3928 Send node,
3845 Node receiver, 3929 Node receiver,
3846 Selector selector, 3930 Selector selector,
3847 A arg) { 3931 A arg) {
3848 apply(receiver, arg); 3932 apply(receiver, arg);
3849 return null; 3933 return null;
3850 } 3934 }
3851 3935
3852 @override 3936 @override
3937 R visitIfNotNullDynamicPropertyGet(
3938 Send node,
3939 Node receiver,
3940 Selector selector,
3941 A arg) {
3942 apply(receiver, arg);
3943 return null;
3944 }
3945
3946 @override
3853 R visitDynamicPropertyInvoke( 3947 R visitDynamicPropertyInvoke(
3854 Send node, 3948 Send node,
3855 Node receiver, 3949 Node receiver,
3856 NodeList arguments, 3950 NodeList arguments,
3857 Selector selector, 3951 Selector selector,
3858 A arg) { 3952 A arg) {
3859 apply(receiver, arg); 3953 apply(receiver, arg);
3860 apply(arguments, arg); 3954 apply(arguments, arg);
3861 return null; 3955 return null;
3862 } 3956 }
3863 3957
3864 @override 3958 @override
3959 R visitIfNotNullDynamicPropertyInvoke(
3960 Send node,
3961 Node receiver,
3962 NodeList arguments,
3963 Selector selector,
3964 A arg) {
3965 apply(receiver, arg);
3966 apply(arguments, arg);
3967 return null;
3968 }
3969
3970 @override
3865 R visitDynamicPropertyPostfix( 3971 R visitDynamicPropertyPostfix(
3866 Send node, 3972 Send node,
3867 Node receiver, 3973 Node receiver,
3868 IncDecOperator operator, 3974 IncDecOperator operator,
3869 Selector getterSelector, 3975 Selector getterSelector,
3870 Selector setterSelector, 3976 Selector setterSelector,
3871 A arg) { 3977 A arg) {
3872 apply(receiver, arg); 3978 apply(receiver, arg);
3873 return null; 3979 return null;
3874 } 3980 }
3875 3981
3876 @override 3982 @override
3983 R visitIfNotNullDynamicPropertyPostfix(
3984 Send node,
3985 Node receiver,
3986 IncDecOperator operator,
3987 Selector getterSelector,
3988 Selector setterSelector,
3989 A arg) {
3990 apply(receiver, arg);
3991 return null;
3992 }
3993
3994 @override
3877 R visitDynamicPropertyPrefix( 3995 R visitDynamicPropertyPrefix(
3878 Send node, 3996 Send node,
3879 Node receiver, 3997 Node receiver,
3880 IncDecOperator operator, 3998 IncDecOperator operator,
3881 Selector getterSelector, 3999 Selector getterSelector,
3882 Selector setterSelector, 4000 Selector setterSelector,
3883 A arg) { 4001 A arg) {
3884 apply(receiver, arg); 4002 apply(receiver, arg);
3885 return null; 4003 return null;
3886 } 4004 }
3887 4005
3888 @override 4006 @override
4007 R visitIfNotNullDynamicPropertyPrefix(
4008 Send node,
4009 Node receiver,
4010 IncDecOperator operator,
4011 Selector getterSelector,
4012 Selector setterSelector,
4013 A arg) {
4014 apply(receiver, arg);
4015 return null;
4016 }
4017
4018 @override
3889 R visitDynamicPropertySet( 4019 R visitDynamicPropertySet(
3890 SendSet node, 4020 SendSet node,
3891 Node receiver, 4021 Node receiver,
3892 Selector selector, 4022 Selector selector,
3893 Node rhs, 4023 Node rhs,
3894 A arg) { 4024 A arg) {
3895 apply(rhs, arg); 4025 apply(rhs, arg);
3896 return null; 4026 return null;
3897 } 4027 }
3898 4028
3899 @override 4029 @override
4030 R visitIfNotNullDynamicPropertySet(
4031 SendSet node,
4032 Node receiver,
4033 Selector selector,
4034 Node rhs,
4035 A arg) {
4036 apply(rhs, arg);
4037 return null;
4038 }
4039
4040 @override
3900 R visitDynamicTypeLiteralCompound( 4041 R visitDynamicTypeLiteralCompound(
3901 Send node, 4042 Send node,
3902 ConstantExpression constant, 4043 ConstantExpression constant,
3903 AssignmentOperator operator, 4044 AssignmentOperator operator,
3904 Node rhs, 4045 Node rhs,
3905 A arg) { 4046 A arg) {
3906 apply(rhs, arg); 4047 apply(rhs, arg);
3907 return null; 4048 return null;
3908 } 4049 }
3909 4050
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
4082 R visitLocalVariableSet( 4223 R visitLocalVariableSet(
4083 SendSet node, 4224 SendSet node,
4084 LocalVariableElement variable, 4225 LocalVariableElement variable,
4085 Node rhs, 4226 Node rhs,
4086 A arg) { 4227 A arg) {
4087 apply(rhs, arg); 4228 apply(rhs, arg);
4088 return null; 4229 return null;
4089 } 4230 }
4090 4231
4091 @override 4232 @override
4233 R visitIfNull(
4234 Send node,
4235 Node left,
4236 Node right,
4237 A arg) {
4238 apply(left, arg);
4239 apply(right, arg);
4240 return null;
4241 }
4242
4243 @override
4092 R visitLogicalAnd( 4244 R visitLogicalAnd(
4093 Send node, 4245 Send node,
4094 Node left, 4246 Node left,
4095 Node right, 4247 Node right,
4096 A arg) { 4248 A arg) {
4097 apply(left, arg); 4249 apply(left, arg);
4098 apply(right, arg); 4250 apply(right, arg);
4099 return null; 4251 return null;
4100 } 4252 }
4101 4253
(...skipping 3388 matching lines...) Expand 10 before | Expand all | Expand 10 after
7490 @override 7642 @override
7491 R visitDynamicPropertyGet( 7643 R visitDynamicPropertyGet(
7492 Send node, 7644 Send node,
7493 Node receiver, 7645 Node receiver,
7494 Selector selector, 7646 Selector selector,
7495 A arg) { 7647 A arg) {
7496 return handleDynamicGet(node, receiver, selector, arg); 7648 return handleDynamicGet(node, receiver, selector, arg);
7497 } 7649 }
7498 7650
7499 @override 7651 @override
7652 R visitIfNotNullDynamicPropertyGet(
7653 Send node,
7654 Node receiver,
7655 Selector selector,
7656 A arg) {
7657 return handleDynamicGet(node, receiver, selector, arg);
Johnni Winther 2015/05/22 12:39:49 Add a TODO for me questioning whether these should
Siggi Cherem (dart-lang) 2015/05/22 19:49:54 Done.
7658 }
7659
7660 @override
7500 R visitDynamicPropertyInvoke( 7661 R visitDynamicPropertyInvoke(
7501 Send node, 7662 Send node,
7502 Node receiver, 7663 Node receiver,
7503 NodeList arguments, 7664 NodeList arguments,
7504 Selector selector, 7665 Selector selector,
7505 A arg) { 7666 A arg) {
7506 return handleDynamicInvoke(node, receiver, arguments, selector, arg); 7667 return handleDynamicInvoke(node, receiver, arguments, selector, arg);
7507 } 7668 }
7508 7669
7509 @override 7670 @override
7671 R visitIfNotNullDynamicPropertyInvoke(
7672 Send node,
7673 Node receiver,
7674 NodeList arguments,
7675 Selector selector,
7676 A arg) {
7677 return handleDynamicInvoke(node, receiver, arguments, selector, arg);
7678 }
7679
7680 @override
7510 R visitDynamicPropertySet( 7681 R visitDynamicPropertySet(
7511 SendSet node, 7682 SendSet node,
7512 Node receiver, 7683 Node receiver,
7513 Selector selector, 7684 Selector selector,
7514 Node rhs, 7685 Node rhs,
7515 A arg) { 7686 A arg) {
7516 return handleDynamicSet(node, receiver, selector, rhs, arg); 7687 return handleDynamicSet(node, receiver, selector, rhs, arg);
7517 } 7688 }
7518 7689
7519 @override 7690 @override
7691 R visitIfNotNullDynamicPropertySet(
7692 SendSet node,
7693 Node receiver,
7694 Selector selector,
7695 Node rhs,
7696 A arg) {
7697 return handleDynamicSet(node, receiver, selector, rhs, arg);
7698 }
7699
7700 @override
7520 R visitThisPropertyGet( 7701 R visitThisPropertyGet(
7521 Send node, 7702 Send node,
7522 Selector selector, 7703 Selector selector,
7523 A arg) { 7704 A arg) {
7524 return handleDynamicGet(node, null, selector, arg); 7705 return handleDynamicGet(node, null, selector, arg);
7525 } 7706 }
7526 7707
7527 @override 7708 @override
7528 R visitThisPropertyInvoke( 7709 R visitThisPropertyInvoke(
7529 Send node, 7710 Send node,
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
7584 AssignmentOperator operator, 7765 AssignmentOperator operator,
7585 Node rhs, 7766 Node rhs,
7586 Selector getterSelector, 7767 Selector getterSelector,
7587 Selector setterSelector, 7768 Selector setterSelector,
7588 A arg) { 7769 A arg) {
7589 return handleDynamicCompound( 7770 return handleDynamicCompound(
7590 node, receiver, operator, rhs, getterSelector, setterSelector, arg); 7771 node, receiver, operator, rhs, getterSelector, setterSelector, arg);
7591 } 7772 }
7592 7773
7593 @override 7774 @override
7775 R visitIfNotNullDynamicPropertyCompound(
7776 Send node,
7777 Node receiver,
7778 AssignmentOperator operator,
7779 Node rhs,
7780 Selector getterSelector,
7781 Selector setterSelector,
7782 A arg) {
7783 return handleDynamicCompound(
7784 node, receiver, operator, rhs, getterSelector, setterSelector, arg);
7785 }
7786
7787 @override
7594 R visitDynamicPropertyPostfix( 7788 R visitDynamicPropertyPostfix(
7595 Send node, 7789 Send node,
7596 Node receiver, 7790 Node receiver,
7597 IncDecOperator operator, 7791 IncDecOperator operator,
7598 Selector getterSelector, 7792 Selector getterSelector,
7599 Selector setterSelector, 7793 Selector setterSelector,
7600 A arg) { 7794 A arg) {
7601 return handleDynamicPostfixPrefix( 7795 return handleDynamicPostfixPrefix(
7602 node, receiver, operator, 7796 node, receiver, operator,
7603 getterSelector, setterSelector, arg, isPrefix: false); 7797 getterSelector, setterSelector, arg, isPrefix: false);
7604 } 7798 }
7605 7799
7606 @override 7800 @override
7801 R visitIfNotNullDynamicPropertyPostfix(
7802 Send node,
7803 Node receiver,
7804 IncDecOperator operator,
7805 Selector getterSelector,
7806 Selector setterSelector,
7807 A arg) {
7808 return handleDynamicPostfixPrefix(
7809 node, receiver, operator,
7810 getterSelector, setterSelector, arg, isPrefix: false);
7811 }
7812
7813 @override
7607 R visitDynamicPropertyPrefix( 7814 R visitDynamicPropertyPrefix(
7608 Send node, 7815 Send node,
7609 Node receiver, 7816 Node receiver,
7610 IncDecOperator operator, 7817 IncDecOperator operator,
7611 Selector getterSelector, 7818 Selector getterSelector,
7612 Selector setterSelector, 7819 Selector setterSelector,
7613 A arg) { 7820 A arg) {
7614 return handleDynamicPostfixPrefix( 7821 return handleDynamicPostfixPrefix(
7615 node, receiver, operator, 7822 node, receiver, operator,
7616 getterSelector, setterSelector, arg, isPrefix: true); 7823 getterSelector, setterSelector, arg, isPrefix: true);
7617 } 7824 }
7618 7825
7619 @override 7826 @override
7827 R visitIfNotNullDynamicPropertyPrefix(
7828 Send node,
7829 Node receiver,
7830 IncDecOperator operator,
7831 Selector getterSelector,
7832 Selector setterSelector,
7833 A arg) {
7834 return handleDynamicPostfixPrefix(
7835 node, receiver, operator,
7836 getterSelector, setterSelector, arg, isPrefix: true);
7837 }
7838
7839 @override
7620 R visitThisPropertyCompound( 7840 R visitThisPropertyCompound(
7621 Send node, 7841 Send node,
7622 AssignmentOperator operator, 7842 AssignmentOperator operator,
7623 Node rhs, 7843 Node rhs,
7624 Selector getterSelector, 7844 Selector getterSelector,
7625 Selector setterSelector, 7845 Selector setterSelector,
7626 A arg) { 7846 A arg) {
7627 return handleDynamicCompound( 7847 return handleDynamicCompound(
7628 node, null, operator, rhs, getterSelector, setterSelector, arg); 7848 node, null, operator, rhs, getterSelector, setterSelector, arg);
7629 } 7849 }
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
7821 A arg) { 8041 A arg) {
7822 return handleDynamicCompounds( 8042 return handleDynamicCompounds(
7823 node, 8043 node,
7824 receiver, 8044 receiver,
7825 new AssignmentCompound(operator, rhs), 8045 new AssignmentCompound(operator, rhs),
7826 getterSelector, 8046 getterSelector,
7827 setterSelector, 8047 setterSelector,
7828 arg); 8048 arg);
7829 } 8049 }
7830 8050
8051 R visitIfNotNullDynamicPropertyCompound(
8052 Send node,
8053 Node receiver,
8054 AssignmentOperator operator,
8055 Node rhs,
8056 Selector getterSelector,
8057 Selector setterSelector,
8058 A arg) {
8059 return handleDynamicCompounds(
8060 node,
8061 receiver,
8062 new AssignmentCompound(operator, rhs),
8063 getterSelector,
8064 setterSelector,
8065 arg);
8066 }
8067
7831 @override 8068 @override
7832 R visitThisPropertyCompound( 8069 R visitThisPropertyCompound(
7833 Send node, 8070 Send node,
7834 AssignmentOperator operator, 8071 AssignmentOperator operator,
7835 Node rhs, 8072 Node rhs,
7836 Selector getterSelector, 8073 Selector getterSelector,
7837 Selector setterSelector, 8074 Selector setterSelector,
7838 A arg) { 8075 A arg) {
7839 return handleDynamicCompounds( 8076 return handleDynamicCompounds(
7840 node, 8077 node,
(...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after
8204 A arg) { 8441 A arg) {
8205 return handleDynamicCompounds( 8442 return handleDynamicCompounds(
8206 node, 8443 node,
8207 receiver, 8444 receiver,
8208 new IncDecCompound(CompoundKind.PREFIX, operator), 8445 new IncDecCompound(CompoundKind.PREFIX, operator),
8209 getterSelector, 8446 getterSelector,
8210 setterSelector, 8447 setterSelector,
8211 arg); 8448 arg);
8212 } 8449 }
8213 8450
8451 R visitIfNotNullDynamicPropertyPrefix(
8452 Send node,
8453 Node receiver,
8454 IncDecOperator operator,
8455 Selector getterSelector,
8456 Selector setterSelector,
8457 A arg) {
8458 return handleDynamicCompounds(
8459 node,
8460 receiver,
8461 new IncDecCompound(CompoundKind.PREFIX, operator),
8462 getterSelector,
8463 setterSelector,
8464 arg);
8465 }
8466
8214 @override 8467 @override
8215 R visitParameterPrefix( 8468 R visitParameterPrefix(
8216 Send node, 8469 Send node,
8217 ParameterElement parameter, 8470 ParameterElement parameter,
8218 IncDecOperator operator, 8471 IncDecOperator operator,
8219 A arg) { 8472 A arg) {
8220 return handleLocalCompounds( 8473 return handleLocalCompounds(
8221 node, 8474 node,
8222 parameter, 8475 parameter,
8223 new IncDecCompound(CompoundKind.PREFIX, operator), 8476 new IncDecCompound(CompoundKind.PREFIX, operator),
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
8509 return handleDynamicCompounds( 8762 return handleDynamicCompounds(
8510 node, 8763 node,
8511 receiver, 8764 receiver,
8512 new IncDecCompound(CompoundKind.POSTFIX, operator), 8765 new IncDecCompound(CompoundKind.POSTFIX, operator),
8513 getterSelector, 8766 getterSelector,
8514 setterSelector, 8767 setterSelector,
8515 arg); 8768 arg);
8516 } 8769 }
8517 8770
8518 @override 8771 @override
8772 R visitIfNotNullDynamicPropertyPostfix(
8773 Send node,
8774 Node receiver,
8775 IncDecOperator operator,
8776 Selector getterSelector,
8777 Selector setterSelector,
8778 A arg) {
8779 return handleDynamicCompounds(
8780 node,
8781 receiver,
8782 new IncDecCompound(CompoundKind.POSTFIX, operator),
8783 getterSelector,
8784 setterSelector,
8785 arg);
8786 }
8787
8788 @override
8519 R visitParameterPostfix( 8789 R visitParameterPostfix(
8520 Send node, 8790 Send node,
8521 ParameterElement parameter, 8791 ParameterElement parameter,
8522 IncDecOperator operator, 8792 IncDecOperator operator,
8523 A arg) { 8793 A arg) {
8524 return handleLocalCompounds( 8794 return handleLocalCompounds(
8525 node, 8795 node,
8526 parameter, 8796 parameter,
8527 new IncDecCompound(CompoundKind.POSTFIX, operator), 8797 new IncDecCompound(CompoundKind.POSTFIX, operator),
8528 arg, 8798 arg,
(...skipping 1791 matching lines...) Expand 10 before | Expand all | Expand 10 after
10320 NewExpression node, 10590 NewExpression node,
10321 ConstructorElement constructor, 10591 ConstructorElement constructor,
10322 InterfaceType type, 10592 InterfaceType type,
10323 NodeList arguments, 10593 NodeList arguments,
10324 CallStructure callStructure, 10594 CallStructure callStructure,
10325 A arg) { 10595 A arg) {
10326 return handleConstructorInvoke( 10596 return handleConstructorInvoke(
10327 node, constructor, type, arguments, callStructure, arg); 10597 node, constructor, type, arguments, callStructure, arg);
10328 } 10598 }
10329 } 10599 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698