| 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_test; | 5 part of dart2js.semantics_visitor_test; | 
| 6 | 6 | 
| 7 class SemanticSendTestVisitor extends SemanticTestVisitor { | 7 class SemanticSendTestVisitor extends SemanticTestVisitor { | 
| 8 |  | 
| 9   SemanticSendTestVisitor(TreeElements elements) : super(elements); | 8   SemanticSendTestVisitor(TreeElements elements) : super(elements); | 
| 10 | 9 | 
| 11   @override | 10   @override | 
| 12   visitAs( | 11   visitAs(Send node, Node expression, DartType type, arg) { | 
| 13       Send node, | 12     visits | 
| 14       Node expression, | 13         .add(new Visit(VisitKind.VISIT_AS, expression: expression, type: type)); | 
| 15       DartType type, |  | 
| 16       arg) { |  | 
| 17     visits.add(new Visit(VisitKind.VISIT_AS, |  | 
| 18         expression: expression, type: type)); |  | 
| 19     apply(expression, arg); | 14     apply(expression, arg); | 
| 20   } | 15   } | 
| 21 | 16 | 
| 22   @override | 17   @override | 
| 23   errorInvalidCompound( | 18   errorInvalidCompound(Send node, ErroneousElement error, | 
| 24       Send node, | 19       AssignmentOperator operator, Node rhs, arg) { | 
| 25       ErroneousElement error, |  | 
| 26       AssignmentOperator operator, |  | 
| 27       Node rhs, |  | 
| 28       arg) { |  | 
| 29     visits.add(new Visit(VisitKind.ERROR_INVALID_COMPOUND, | 20     visits.add(new Visit(VisitKind.ERROR_INVALID_COMPOUND, | 
| 30         error: error.messageKind, operator: operator, rhs: rhs)); | 21         error: error.messageKind, operator: operator, rhs: rhs)); | 
| 31     super.errorInvalidCompound(node, error, operator, rhs, arg); | 22     super.errorInvalidCompound(node, error, operator, rhs, arg); | 
| 32   } | 23   } | 
| 33 | 24 | 
| 34   @override | 25   @override | 
| 35   errorInvalidGet( | 26   errorInvalidGet(Send node, ErroneousElement error, arg) { | 
| 36       Send node, | 27     visits | 
| 37       ErroneousElement error, | 28         .add(new Visit(VisitKind.ERROR_INVALID_GET, error: error.messageKind)); | 
| 38       arg) { |  | 
| 39     visits.add(new Visit(VisitKind.ERROR_INVALID_GET, |  | 
| 40         error: error.messageKind)); |  | 
| 41     super.errorInvalidGet(node, error, arg); | 29     super.errorInvalidGet(node, error, arg); | 
| 42   } | 30   } | 
| 43 | 31 | 
| 44   @override | 32   @override | 
| 45   errorInvalidInvoke( | 33   errorInvalidInvoke(Send node, ErroneousElement error, NodeList arguments, | 
| 46       Send node, | 34       Selector selector, arg) { | 
| 47       ErroneousElement error, |  | 
| 48       NodeList arguments, |  | 
| 49       Selector selector, |  | 
| 50       arg) { |  | 
| 51     visits.add(new Visit(VisitKind.ERROR_INVALID_INVOKE, | 35     visits.add(new Visit(VisitKind.ERROR_INVALID_INVOKE, | 
| 52         error: error.messageKind, arguments: arguments)); | 36         error: error.messageKind, arguments: arguments)); | 
| 53     super.errorInvalidInvoke(node, error, arguments, selector, arg); | 37     super.errorInvalidInvoke(node, error, arguments, selector, arg); | 
| 54   } | 38   } | 
| 55 | 39 | 
| 56   @override | 40   @override | 
| 57   errorInvalidPostfix( | 41   errorInvalidPostfix( | 
| 58       Send node, | 42       Send node, ErroneousElement error, IncDecOperator operator, arg) { | 
| 59       ErroneousElement error, |  | 
| 60       IncDecOperator operator, |  | 
| 61       arg) { |  | 
| 62     visits.add(new Visit(VisitKind.ERROR_INVALID_POSTFIX, | 43     visits.add(new Visit(VisitKind.ERROR_INVALID_POSTFIX, | 
| 63         error: error.messageKind, operator: operator)); | 44         error: error.messageKind, operator: operator)); | 
| 64     super.errorInvalidPostfix(node, error, operator, arg); | 45     super.errorInvalidPostfix(node, error, operator, arg); | 
| 65   } | 46   } | 
| 66 | 47 | 
| 67   @override | 48   @override | 
| 68   errorInvalidPrefix( | 49   errorInvalidPrefix( | 
| 69       Send node, | 50       Send node, ErroneousElement error, IncDecOperator operator, arg) { | 
| 70       ErroneousElement error, |  | 
| 71       IncDecOperator operator, |  | 
| 72       arg) { |  | 
| 73     visits.add(new Visit(VisitKind.ERROR_INVALID_PREFIX, | 51     visits.add(new Visit(VisitKind.ERROR_INVALID_PREFIX, | 
| 74         error: error.messageKind, operator: operator)); | 52         error: error.messageKind, operator: operator)); | 
| 75     super.errorInvalidPrefix(node, error, operator, arg); | 53     super.errorInvalidPrefix(node, error, operator, arg); | 
| 76   } | 54   } | 
| 77 | 55 | 
| 78   @override | 56   @override | 
| 79   errorInvalidSet( | 57   errorInvalidSet(Send node, ErroneousElement error, Node rhs, arg) { | 
| 80       Send node, |  | 
| 81       ErroneousElement error, |  | 
| 82       Node rhs, |  | 
| 83       arg) { |  | 
| 84     visits.add(new Visit(VisitKind.ERROR_INVALID_SET, | 58     visits.add(new Visit(VisitKind.ERROR_INVALID_SET, | 
| 85         error: error.messageKind, rhs: rhs)); | 59         error: error.messageKind, rhs: rhs)); | 
| 86     super.errorInvalidSet(node, error, rhs, arg); | 60     super.errorInvalidSet(node, error, rhs, arg); | 
| 87   } | 61   } | 
| 88 | 62 | 
| 89   @override | 63   @override | 
| 90   errorInvalidSetIfNull( | 64   errorInvalidSetIfNull(Send node, ErroneousElement error, Node rhs, arg) { | 
| 91       Send node, |  | 
| 92       ErroneousElement error, |  | 
| 93       Node rhs, |  | 
| 94       arg) { |  | 
| 95     visits.add(new Visit(VisitKind.ERROR_INVALID_SET_IF_NULL, | 65     visits.add(new Visit(VisitKind.ERROR_INVALID_SET_IF_NULL, | 
| 96         error: error.messageKind, rhs: rhs)); | 66         error: error.messageKind, rhs: rhs)); | 
| 97     super.errorInvalidSetIfNull(node, error, rhs, arg); | 67     super.errorInvalidSetIfNull(node, error, rhs, arg); | 
| 98   } | 68   } | 
| 99 | 69 | 
| 100   @override | 70   @override | 
| 101   errorInvalidUnary( | 71   errorInvalidUnary( | 
| 102       Send node, | 72       Send node, UnaryOperator operator, ErroneousElement error, arg) { | 
| 103       UnaryOperator operator, |  | 
| 104       ErroneousElement error, |  | 
| 105       arg) { |  | 
| 106     visits.add(new Visit(VisitKind.ERROR_INVALID_UNARY, | 73     visits.add(new Visit(VisitKind.ERROR_INVALID_UNARY, | 
| 107         error: error.messageKind, operator: operator)); | 74         error: error.messageKind, operator: operator)); | 
| 108     super.errorInvalidUnary(node, operator, error, arg); | 75     super.errorInvalidUnary(node, operator, error, arg); | 
| 109   } | 76   } | 
| 110 | 77 | 
| 111   @override | 78   @override | 
| 112   errorInvalidEquals( | 79   errorInvalidEquals(Send node, ErroneousElement error, Node right, arg) { | 
| 113       Send node, |  | 
| 114       ErroneousElement error, |  | 
| 115       Node right, |  | 
| 116       arg) { |  | 
| 117     visits.add(new Visit(VisitKind.ERROR_INVALID_EQUALS, | 80     visits.add(new Visit(VisitKind.ERROR_INVALID_EQUALS, | 
| 118         error: error.messageKind, right: right)); | 81         error: error.messageKind, right: right)); | 
| 119     super.errorInvalidEquals(node, error, right, arg); | 82     super.errorInvalidEquals(node, error, right, arg); | 
| 120   } | 83   } | 
| 121 | 84 | 
| 122   @override | 85   @override | 
| 123   errorInvalidNotEquals( | 86   errorInvalidNotEquals(Send node, ErroneousElement error, Node right, arg) { | 
| 124       Send node, |  | 
| 125       ErroneousElement error, |  | 
| 126       Node right, |  | 
| 127       arg) { |  | 
| 128     visits.add(new Visit(VisitKind.ERROR_INVALID_NOT_EQUALS, | 87     visits.add(new Visit(VisitKind.ERROR_INVALID_NOT_EQUALS, | 
| 129         error: error.messageKind, right: right)); | 88         error: error.messageKind, right: right)); | 
| 130     super.errorInvalidNotEquals(node, error, right, arg); | 89     super.errorInvalidNotEquals(node, error, right, arg); | 
| 131   } | 90   } | 
| 132 | 91 | 
| 133   @override | 92   @override | 
| 134   errorInvalidBinary( | 93   errorInvalidBinary(Send node, ErroneousElement error, BinaryOperator operator, | 
| 135       Send node, | 94       Node right, arg) { | 
| 136       ErroneousElement error, |  | 
| 137       BinaryOperator operator, |  | 
| 138       Node right, |  | 
| 139       arg) { |  | 
| 140     visits.add(new Visit(VisitKind.ERROR_INVALID_BINARY, | 95     visits.add(new Visit(VisitKind.ERROR_INVALID_BINARY, | 
| 141         error: error.messageKind, operator: operator, right: right)); | 96         error: error.messageKind, operator: operator, right: right)); | 
| 142     super.errorInvalidBinary(node, error, operator, right, arg); | 97     super.errorInvalidBinary(node, error, operator, right, arg); | 
| 143   } | 98   } | 
| 144 | 99 | 
| 145   @override | 100   @override | 
| 146   errorInvalidIndex( | 101   errorInvalidIndex(Send node, ErroneousElement error, Node index, arg) { | 
| 147       Send node, |  | 
| 148       ErroneousElement error, |  | 
| 149       Node index, |  | 
| 150       arg) { |  | 
| 151     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX, | 102     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX, | 
| 152         error: error.messageKind, index: index)); | 103         error: error.messageKind, index: index)); | 
| 153     super.errorInvalidIndex(node, error, index, arg); | 104     super.errorInvalidIndex(node, error, index, arg); | 
| 154   } | 105   } | 
| 155 | 106 | 
| 156   @override | 107   @override | 
| 157   errorInvalidIndexSet( | 108   errorInvalidIndexSet( | 
| 158       Send node, | 109       Send node, ErroneousElement error, Node index, Node rhs, arg) { | 
| 159       ErroneousElement error, |  | 
| 160       Node index, |  | 
| 161       Node rhs, |  | 
| 162       arg) { |  | 
| 163     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_SET, | 110     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_SET, | 
| 164         error: error.messageKind, index: index, rhs: rhs)); | 111         error: error.messageKind, index: index, rhs: rhs)); | 
| 165     super.errorInvalidIndexSet(node, error, index, rhs, arg); | 112     super.errorInvalidIndexSet(node, error, index, rhs, arg); | 
| 166   } | 113   } | 
| 167 | 114 | 
| 168   @override | 115   @override | 
| 169   errorInvalidCompoundIndexSet( | 116   errorInvalidCompoundIndexSet(Send node, ErroneousElement error, Node index, | 
| 170       Send node, | 117       AssignmentOperator operator, Node rhs, arg) { | 
| 171       ErroneousElement error, |  | 
| 172       Node index, |  | 
| 173       AssignmentOperator operator, |  | 
| 174       Node rhs, |  | 
| 175       arg) { |  | 
| 176     visits.add(new Visit(VisitKind.ERROR_INVALID_COMPOUND_INDEX_SET, | 118     visits.add(new Visit(VisitKind.ERROR_INVALID_COMPOUND_INDEX_SET, | 
| 177         error: error.messageKind, index: index, operator: operator, rhs: rhs)); | 119         error: error.messageKind, index: index, operator: operator, rhs: rhs)); | 
| 178     super.errorInvalidCompoundIndexSet(node, error, index, operator, rhs, arg); | 120     super.errorInvalidCompoundIndexSet(node, error, index, operator, rhs, arg); | 
| 179   } | 121   } | 
| 180 | 122 | 
| 181   @override | 123   @override | 
| 182   errorInvalidIndexPrefix( | 124   errorInvalidIndexPrefix(Send node, ErroneousElement error, Node index, | 
| 183       Send node, | 125       IncDecOperator operator, arg) { | 
| 184       ErroneousElement error, |  | 
| 185       Node index, |  | 
| 186       IncDecOperator operator, |  | 
| 187       arg) { |  | 
| 188     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_PREFIX, | 126     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_PREFIX, | 
| 189         error: error.messageKind, index: index, operator: operator)); | 127         error: error.messageKind, index: index, operator: operator)); | 
| 190     super.errorInvalidIndexPrefix(node, error, index, operator, arg); | 128     super.errorInvalidIndexPrefix(node, error, index, operator, arg); | 
| 191   } | 129   } | 
| 192 | 130 | 
| 193   @override | 131   @override | 
| 194   errorInvalidIndexPostfix( | 132   errorInvalidIndexPostfix(Send node, ErroneousElement error, Node index, | 
| 195       Send node, | 133       IncDecOperator operator, arg) { | 
| 196       ErroneousElement error, |  | 
| 197       Node index, |  | 
| 198       IncDecOperator operator, |  | 
| 199       arg) { |  | 
| 200     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_POSTFIX, | 134     visits.add(new Visit(VisitKind.ERROR_INVALID_INDEX_POSTFIX, | 
| 201         error: error.messageKind, index: index, operator: operator)); | 135         error: error.messageKind, index: index, operator: operator)); | 
| 202     super.errorInvalidIndexPostfix(node, error, index, operator, arg); | 136     super.errorInvalidIndexPostfix(node, error, index, operator, arg); | 
| 203   } | 137   } | 
| 204 | 138 | 
| 205   @override | 139   @override | 
| 206   visitBinary( | 140   visitBinary(Send node, Node left, BinaryOperator operator, Node right, arg) { | 
| 207       Send node, |  | 
| 208       Node left, |  | 
| 209       BinaryOperator operator, |  | 
| 210       Node right, |  | 
| 211       arg) { |  | 
| 212     visits.add(new Visit(VisitKind.VISIT_BINARY, | 141     visits.add(new Visit(VisitKind.VISIT_BINARY, | 
| 213         left: left, operator: operator, right: right)); | 142         left: left, operator: operator, right: right)); | 
| 214     super.visitBinary(node, left, operator, right, arg); | 143     super.visitBinary(node, left, operator, right, arg); | 
| 215   } | 144   } | 
| 216 | 145 | 
| 217   @override | 146   @override | 
| 218   errorUndefinedBinaryExpression( | 147   errorUndefinedBinaryExpression( | 
| 219       Send node, | 148       Send node, Node left, Operator operator, Node right, arg) { | 
| 220       Node left, |  | 
| 221       Operator operator, |  | 
| 222       Node right, |  | 
| 223       arg) { |  | 
| 224     visits.add(new Visit(VisitKind.ERROR_UNDEFINED_BINARY_EXPRESSION, | 149     visits.add(new Visit(VisitKind.ERROR_UNDEFINED_BINARY_EXPRESSION, | 
| 225         left: left, operator: operator, right: right)); | 150         left: left, operator: operator, right: right)); | 
| 226     super.errorUndefinedBinaryExpression(node, left, operator, right, arg); | 151     super.errorUndefinedBinaryExpression(node, left, operator, right, arg); | 
| 227   } | 152   } | 
| 228 | 153 | 
| 229   @override | 154   @override | 
| 230   visitIndex( | 155   visitIndex(Send node, Node receiver, Node index, arg) { | 
| 231       Send node, | 156     visits.add( | 
| 232       Node receiver, | 157         new Visit(VisitKind.VISIT_INDEX, receiver: receiver, index: index)); | 
| 233       Node index, |  | 
| 234       arg) { |  | 
| 235     visits.add(new Visit(VisitKind.VISIT_INDEX, |  | 
| 236         receiver: receiver, index: index)); |  | 
| 237     apply(receiver, arg); | 158     apply(receiver, arg); | 
| 238     apply(index, arg); | 159     apply(index, arg); | 
| 239   } | 160   } | 
| 240 | 161 | 
| 241   @override | 162   @override | 
| 242   visitClassTypeLiteralGet( | 163   visitClassTypeLiteralGet(Send node, ConstantExpression constant, arg) { | 
| 243       Send node, |  | 
| 244       ConstantExpression constant, |  | 
| 245       arg) { |  | 
| 246     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_GET, | 164     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_GET, | 
| 247         constant: constant.toDartText())); | 165         constant: constant.toDartText())); | 
| 248   } | 166   } | 
| 249 | 167 | 
| 250   @override | 168   @override | 
| 251   visitClassTypeLiteralInvoke( | 169   visitClassTypeLiteralInvoke(Send node, ConstantExpression constant, | 
| 252       Send node, | 170       NodeList arguments, CallStructure callStructure, arg) { | 
| 253       ConstantExpression constant, |  | 
| 254       NodeList arguments, |  | 
| 255       CallStructure callStructure, |  | 
| 256       arg) { |  | 
| 257     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_INVOKE, | 171     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_INVOKE, | 
| 258         constant: constant.toDartText(), arguments: arguments)); | 172         constant: constant.toDartText(), arguments: arguments)); | 
| 259     apply(arguments, arg); | 173     apply(arguments, arg); | 
| 260   } | 174   } | 
| 261 | 175 | 
| 262   @override | 176   @override | 
| 263   visitClassTypeLiteralSet( | 177   visitClassTypeLiteralSet( | 
| 264       SendSet node, | 178       SendSet node, ConstantExpression constant, Node rhs, arg) { | 
| 265       ConstantExpression constant, |  | 
| 266       Node rhs, |  | 
| 267       arg) { |  | 
| 268     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_SET, | 179     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_SET, | 
| 269         constant: constant.toDartText(), rhs: rhs)); | 180         constant: constant.toDartText(), rhs: rhs)); | 
| 270     super.visitClassTypeLiteralSet(node, constant, rhs, arg); | 181     super.visitClassTypeLiteralSet(node, constant, rhs, arg); | 
| 271   } | 182   } | 
| 272 | 183 | 
| 273   @override | 184   @override | 
| 274   visitNotEquals( | 185   visitNotEquals(Send node, Node left, Node right, arg) { | 
| 275       Send node, | 186     visits.add(new Visit(VisitKind.VISIT_NOT_EQUALS, left: left, right: right)); | 
| 276       Node left, |  | 
| 277       Node right, |  | 
| 278       arg) { |  | 
| 279     visits.add(new Visit(VisitKind.VISIT_NOT_EQUALS, |  | 
| 280         left: left, right: right)); |  | 
| 281     apply(left, arg); | 187     apply(left, arg); | 
| 282     apply(right, arg); | 188     apply(right, arg); | 
| 283   } | 189   } | 
| 284 | 190 | 
| 285   @override | 191   @override | 
| 286   visitDynamicPropertyPrefix( | 192   visitDynamicPropertyPrefix( | 
| 287       Send node, | 193       Send node, Node receiver, Name name, IncDecOperator operator, arg) { | 
| 288       Node receiver, |  | 
| 289       Name name, |  | 
| 290       IncDecOperator operator, |  | 
| 291       arg) { |  | 
| 292     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_PREFIX, | 194     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_PREFIX, | 
| 293         receiver: receiver, operator: operator, name: name)); | 195         receiver: receiver, operator: operator, name: name)); | 
| 294     super.visitDynamicPropertyPrefix(node, receiver, name, operator, arg); | 196     super.visitDynamicPropertyPrefix(node, receiver, name, operator, arg); | 
| 295   } | 197   } | 
| 296 | 198 | 
| 297   @override | 199   @override | 
| 298   visitDynamicPropertyPostfix( | 200   visitDynamicPropertyPostfix( | 
| 299       Send node, | 201       Send node, Node receiver, Name name, IncDecOperator operator, arg) { | 
| 300       Node receiver, |  | 
| 301       Name name, |  | 
| 302       IncDecOperator operator, |  | 
| 303       arg) { |  | 
| 304     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_POSTFIX, | 202     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_POSTFIX, | 
| 305         receiver: receiver, operator: operator, name: name)); | 203         receiver: receiver, operator: operator, name: name)); | 
| 306     super.visitDynamicPropertyPostfix(node, receiver, name, operator, arg); | 204     super.visitDynamicPropertyPostfix(node, receiver, name, operator, arg); | 
| 307   } | 205   } | 
| 308 | 206 | 
| 309   @override | 207   @override | 
| 310   visitDynamicPropertyGet( | 208   visitDynamicPropertyGet(Send node, Node receiver, Name name, arg) { | 
| 311       Send node, |  | 
| 312       Node receiver, |  | 
| 313       Name name, |  | 
| 314       arg) { |  | 
| 315     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_GET, | 209     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_GET, | 
| 316         receiver: receiver, name: name)); | 210         receiver: receiver, name: name)); | 
| 317     super.visitDynamicPropertyGet(node, receiver, name, arg); | 211     super.visitDynamicPropertyGet(node, receiver, name, arg); | 
| 318   } | 212   } | 
| 319 | 213 | 
| 320   @override | 214   @override | 
| 321   visitDynamicPropertyInvoke( | 215   visitDynamicPropertyInvoke( | 
| 322       Send node, | 216       Send node, Node receiver, NodeList arguments, Selector selector, arg) { | 
| 323       Node receiver, |  | 
| 324       NodeList arguments, |  | 
| 325       Selector selector, |  | 
| 326       arg) { |  | 
| 327     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_INVOKE, | 217     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_INVOKE, | 
| 328         receiver: receiver, name: selector.name, arguments: arguments)); | 218         receiver: receiver, name: selector.name, arguments: arguments)); | 
| 329     super.visitDynamicPropertyInvoke(node, receiver, arguments, selector, arg); | 219     super.visitDynamicPropertyInvoke(node, receiver, arguments, selector, arg); | 
| 330   } | 220   } | 
| 331 | 221 | 
| 332   @override | 222   @override | 
| 333   visitDynamicPropertySet( | 223   visitDynamicPropertySet( | 
| 334       SendSet node, | 224       SendSet node, Node receiver, Name name, Node rhs, arg) { | 
| 335       Node receiver, |  | 
| 336       Name name, |  | 
| 337       Node rhs, |  | 
| 338       arg) { |  | 
| 339     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_SET, | 225     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_SET, | 
| 340         receiver: receiver, name: name, rhs: rhs)); | 226         receiver: receiver, name: name, rhs: rhs)); | 
| 341     super.visitDynamicPropertySet(node, receiver, name, rhs, arg); | 227     super.visitDynamicPropertySet(node, receiver, name, rhs, arg); | 
| 342   } | 228   } | 
| 343 | 229 | 
| 344   @override | 230   @override | 
| 345   visitDynamicTypeLiteralGet( | 231   visitDynamicTypeLiteralGet(Send node, ConstantExpression constant, arg) { | 
| 346       Send node, |  | 
| 347       ConstantExpression constant, |  | 
| 348       arg) { |  | 
| 349     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_GET, | 232     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_GET, | 
| 350         constant: constant.toDartText())); | 233         constant: constant.toDartText())); | 
| 351   } | 234   } | 
| 352 | 235 | 
| 353   @override | 236   @override | 
| 354   visitDynamicTypeLiteralInvoke( | 237   visitDynamicTypeLiteralInvoke(Send node, ConstantExpression constant, | 
| 355       Send node, | 238       NodeList arguments, CallStructure callStructure, arg) { | 
| 356       ConstantExpression constant, |  | 
| 357       NodeList arguments, |  | 
| 358       CallStructure callStructure, |  | 
| 359       arg) { |  | 
| 360     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_INVOKE, | 239     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_INVOKE, | 
| 361         constant: constant.toDartText(), arguments: arguments)); | 240         constant: constant.toDartText(), arguments: arguments)); | 
| 362   } | 241   } | 
| 363 | 242 | 
| 364   @override | 243   @override | 
| 365   visitDynamicTypeLiteralSet( | 244   visitDynamicTypeLiteralSet( | 
| 366       Send node, | 245       Send node, ConstantExpression constant, Node rhs, arg) { | 
| 367       ConstantExpression constant, |  | 
| 368       Node rhs, |  | 
| 369       arg) { |  | 
| 370     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_SET, | 246     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_SET, | 
| 371         constant: constant.toDartText(), rhs: rhs)); | 247         constant: constant.toDartText(), rhs: rhs)); | 
| 372     super.visitDynamicTypeLiteralSet(node, constant, rhs, arg); | 248     super.visitDynamicTypeLiteralSet(node, constant, rhs, arg); | 
| 373   } | 249   } | 
| 374 | 250 | 
| 375   @override | 251   @override | 
| 376   visitExpressionInvoke( | 252   visitExpressionInvoke(Send node, Node expression, NodeList arguments, | 
| 377       Send node, | 253       CallStructure callStructure, arg) { | 
| 378       Node expression, |  | 
| 379       NodeList arguments, |  | 
| 380       CallStructure callStructure, |  | 
| 381       arg) { |  | 
| 382     visits.add(new Visit(VisitKind.VISIT_EXPRESSION_INVOKE, | 254     visits.add(new Visit(VisitKind.VISIT_EXPRESSION_INVOKE, | 
| 383         receiver: expression, arguments: arguments)); | 255         receiver: expression, arguments: arguments)); | 
| 384   } | 256   } | 
| 385 | 257 | 
| 386   @override | 258   @override | 
| 387   visitIs( | 259   visitIs(Send node, Node expression, DartType type, arg) { | 
| 388       Send node, | 260     visits | 
| 389       Node expression, | 261         .add(new Visit(VisitKind.VISIT_IS, expression: expression, type: type)); | 
| 390       DartType type, |  | 
| 391       arg) { |  | 
| 392     visits.add(new Visit(VisitKind.VISIT_IS, |  | 
| 393         expression: expression, type: type)); |  | 
| 394     apply(expression, arg); | 262     apply(expression, arg); | 
| 395   } | 263   } | 
| 396 | 264 | 
| 397   @override | 265   @override | 
| 398   visitIsNot( | 266   visitIsNot(Send node, Node expression, DartType type, arg) { | 
| 399       Send node, | 267     visits.add( | 
| 400       Node expression, | 268         new Visit(VisitKind.VISIT_IS_NOT, expression: expression, type: type)); | 
| 401       DartType type, |  | 
| 402       arg) { |  | 
| 403     visits.add(new Visit(VisitKind.VISIT_IS_NOT, |  | 
| 404         expression: expression, type: type)); |  | 
| 405     apply(expression, arg); | 269     apply(expression, arg); | 
| 406   } | 270   } | 
| 407 | 271 | 
| 408   @override | 272   @override | 
| 409   visitLogicalAnd( | 273   visitLogicalAnd(Send node, Node left, Node right, arg) { | 
| 410       Send node, | 274     visits | 
| 411       Node left, | 275         .add(new Visit(VisitKind.VISIT_LOGICAL_AND, left: left, right: right)); | 
| 412       Node right, |  | 
| 413       arg) { |  | 
| 414     visits.add(new Visit(VisitKind.VISIT_LOGICAL_AND, |  | 
| 415         left: left, right: right)); |  | 
| 416     apply(left, arg); | 276     apply(left, arg); | 
| 417     apply(right, arg); | 277     apply(right, arg); | 
| 418   } | 278   } | 
| 419 | 279 | 
| 420   @override | 280   @override | 
| 421   visitLogicalOr( | 281   visitLogicalOr(Send node, Node left, Node right, arg) { | 
| 422       Send node, | 282     visits.add(new Visit(VisitKind.VISIT_LOGICAL_OR, left: left, right: right)); | 
| 423       Node left, |  | 
| 424       Node right, |  | 
| 425       arg) { |  | 
| 426     visits.add(new Visit(VisitKind.VISIT_LOGICAL_OR, |  | 
| 427         left: left, right: right)); |  | 
| 428     apply(left, arg); | 283     apply(left, arg); | 
| 429     apply(right, arg); | 284     apply(right, arg); | 
| 430   } | 285   } | 
| 431 | 286 | 
| 432   @override | 287   @override | 
| 433   visitLocalFunctionGet( | 288   visitLocalFunctionGet(Send node, LocalFunctionElement function, arg) { | 
| 434       Send node, | 289     visits | 
| 435       LocalFunctionElement function, | 290         .add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_GET, element: function)); | 
| 436       arg) { |  | 
| 437     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_GET, |  | 
| 438                          element: function)); |  | 
| 439   } | 291   } | 
| 440 | 292 | 
| 441   @override | 293   @override | 
| 442   visitLocalFunctionSet( | 294   visitLocalFunctionSet( | 
| 443       SendSet node, | 295       SendSet node, LocalFunctionElement function, Node rhs, arg) { | 
| 444       LocalFunctionElement function, |  | 
| 445       Node rhs, |  | 
| 446       arg) { |  | 
| 447     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_SET, | 296     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_SET, | 
| 448         element: function, rhs: rhs)); | 297         element: function, rhs: rhs)); | 
| 449     super.visitLocalFunctionSet(node, function, rhs, arg); | 298     super.visitLocalFunctionSet(node, function, rhs, arg); | 
| 450   } | 299   } | 
| 451 | 300 | 
| 452   @override | 301   @override | 
| 453   visitLocalFunctionInvoke( | 302   visitLocalFunctionInvoke(Send node, LocalFunctionElement function, | 
| 454       Send node, | 303       NodeList arguments, CallStructure callStructure, arg) { | 
| 455       LocalFunctionElement function, |  | 
| 456       NodeList arguments, |  | 
| 457       CallStructure callStructure, |  | 
| 458       arg) { |  | 
| 459     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_INVOKE, | 304     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_INVOKE, | 
| 460         element: function, arguments: arguments, selector: callStructure)); | 305         element: function, arguments: arguments, selector: callStructure)); | 
| 461     super.visitLocalFunctionInvoke( | 306     super.visitLocalFunctionInvoke( | 
| 462         node, function, arguments, callStructure, arg); | 307         node, function, arguments, callStructure, arg); | 
| 463   } | 308   } | 
| 464 | 309 | 
| 465   @override | 310   @override | 
| 466   visitLocalFunctionIncompatibleInvoke( | 311   visitLocalFunctionIncompatibleInvoke(Send node, LocalFunctionElement function, | 
| 467       Send node, | 312       NodeList arguments, CallStructure callStructure, arg) { | 
| 468       LocalFunctionElement function, |  | 
| 469       NodeList arguments, |  | 
| 470       CallStructure callStructure, |  | 
| 471       arg) { |  | 
| 472     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_INCOMPATIBLE_INVOKE, | 313     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_INCOMPATIBLE_INVOKE, | 
| 473         element: function, arguments: arguments, selector: callStructure)); | 314         element: function, arguments: arguments, selector: callStructure)); | 
| 474     super.visitLocalFunctionInvoke( | 315     super.visitLocalFunctionInvoke( | 
| 475         node, function, arguments, callStructure, arg); | 316         node, function, arguments, callStructure, arg); | 
| 476   } | 317   } | 
| 477 | 318 | 
| 478   @override | 319   @override | 
| 479   visitLocalVariableGet( | 320   visitLocalVariableGet(Send node, LocalVariableElement variable, arg) { | 
| 480       Send node, | 321     visits | 
| 481       LocalVariableElement variable, | 322         .add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_GET, element: variable)); | 
| 482       arg) { |  | 
| 483     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_GET, |  | 
| 484                          element: variable)); |  | 
| 485   } | 323   } | 
| 486 | 324 | 
| 487   @override | 325   @override | 
| 488   visitLocalVariableInvoke( | 326   visitLocalVariableInvoke(Send node, LocalVariableElement variable, | 
| 489       Send node, | 327       NodeList arguments, CallStructure callStructure, arg) { | 
| 490       LocalVariableElement variable, |  | 
| 491       NodeList arguments, |  | 
| 492       CallStructure callStructure, |  | 
| 493       arg) { |  | 
| 494     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_INVOKE, | 328     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_INVOKE, | 
| 495         element: variable, arguments: arguments, selector: callStructure)); | 329         element: variable, arguments: arguments, selector: callStructure)); | 
| 496     apply(arguments, arg); | 330     apply(arguments, arg); | 
| 497   } | 331   } | 
| 498 | 332 | 
| 499   @override | 333   @override | 
| 500   visitLocalVariableSet( | 334   visitLocalVariableSet( | 
| 501       SendSet node, | 335       SendSet node, LocalVariableElement variable, Node rhs, arg) { | 
| 502       LocalVariableElement variable, |  | 
| 503       Node rhs, |  | 
| 504       arg) { |  | 
| 505     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_SET, | 336     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_SET, | 
| 506         element: variable, rhs: rhs)); | 337         element: variable, rhs: rhs)); | 
| 507     super.visitLocalVariableSet(node, variable, rhs, arg); | 338     super.visitLocalVariableSet(node, variable, rhs, arg); | 
| 508   } | 339   } | 
| 509 | 340 | 
| 510   @override | 341   @override | 
| 511   visitFinalLocalVariableSet( | 342   visitFinalLocalVariableSet( | 
| 512       SendSet node, | 343       SendSet node, LocalVariableElement variable, Node rhs, arg) { | 
| 513       LocalVariableElement variable, |  | 
| 514       Node rhs, |  | 
| 515       arg) { |  | 
| 516     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_SET, | 344     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_SET, | 
| 517         element: variable, rhs: rhs)); | 345         element: variable, rhs: rhs)); | 
| 518     super.visitFinalLocalVariableSet(node, variable, rhs, arg); | 346     super.visitFinalLocalVariableSet(node, variable, rhs, arg); | 
| 519   } | 347   } | 
| 520 | 348 | 
| 521   @override | 349   @override | 
| 522   visitParameterGet( | 350   visitParameterGet(Send node, ParameterElement parameter, arg) { | 
| 523       Send node, |  | 
| 524       ParameterElement parameter, |  | 
| 525       arg) { |  | 
| 526     visits.add(new Visit(VisitKind.VISIT_PARAMETER_GET, element: parameter)); | 351     visits.add(new Visit(VisitKind.VISIT_PARAMETER_GET, element: parameter)); | 
| 527   } | 352   } | 
| 528 | 353 | 
| 529   @override | 354   @override | 
| 530   visitParameterInvoke( | 355   visitParameterInvoke(Send node, ParameterElement parameter, | 
| 531       Send node, | 356       NodeList arguments, CallStructure callStructure, arg) { | 
| 532       ParameterElement parameter, |  | 
| 533       NodeList arguments, |  | 
| 534       CallStructure callStructure, |  | 
| 535       arg) { |  | 
| 536     visits.add(new Visit(VisitKind.VISIT_PARAMETER_INVOKE, | 357     visits.add(new Visit(VisitKind.VISIT_PARAMETER_INVOKE, | 
| 537         element: parameter, arguments: arguments, selector: callStructure)); | 358         element: parameter, arguments: arguments, selector: callStructure)); | 
| 538     apply(arguments, arg); | 359     apply(arguments, arg); | 
| 539   } | 360   } | 
| 540 | 361 | 
| 541   @override | 362   @override | 
| 542   visitParameterSet( | 363   visitParameterSet(SendSet node, ParameterElement parameter, Node rhs, arg) { | 
| 543       SendSet node, | 364     visits.add( | 
| 544       ParameterElement parameter, | 365         new Visit(VisitKind.VISIT_PARAMETER_SET, element: parameter, rhs: rhs)); | 
| 545       Node rhs, |  | 
| 546       arg) { |  | 
| 547     visits.add(new Visit(VisitKind.VISIT_PARAMETER_SET, |  | 
| 548                          element: parameter, rhs: rhs)); |  | 
| 549     super.visitParameterSet(node, parameter, rhs, arg); | 366     super.visitParameterSet(node, parameter, rhs, arg); | 
| 550   } | 367   } | 
| 551 | 368 | 
| 552   @override | 369   @override | 
| 553   visitFinalParameterSet( | 370   visitFinalParameterSet( | 
| 554       SendSet node, | 371       SendSet node, ParameterElement parameter, Node rhs, arg) { | 
| 555       ParameterElement parameter, |  | 
| 556       Node rhs, |  | 
| 557       arg) { |  | 
| 558     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_SET, | 372     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_SET, | 
| 559                          element: parameter, rhs: rhs)); | 373         element: parameter, rhs: rhs)); | 
| 560     super.visitFinalParameterSet(node, parameter, rhs, arg); | 374     super.visitFinalParameterSet(node, parameter, rhs, arg); | 
| 561   } | 375   } | 
| 562 | 376 | 
| 563   @override | 377   @override | 
| 564   visitStaticFieldGet( | 378   visitStaticFieldGet(Send node, FieldElement field, arg) { | 
| 565       Send node, |  | 
| 566       FieldElement field, |  | 
| 567       arg) { |  | 
| 568     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_GET, element: field)); | 379     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_GET, element: field)); | 
| 569   } | 380   } | 
| 570 | 381 | 
| 571   @override | 382   @override | 
| 572   visitStaticFieldInvoke( | 383   visitStaticFieldInvoke(Send node, FieldElement field, NodeList arguments, | 
| 573       Send node, | 384       CallStructure callStructure, arg) { | 
| 574       FieldElement field, |  | 
| 575       NodeList arguments, |  | 
| 576       CallStructure callStructure, |  | 
| 577       arg) { |  | 
| 578     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_INVOKE, | 385     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_INVOKE, | 
| 579         element: field, arguments: arguments)); | 386         element: field, arguments: arguments)); | 
| 580     apply(arguments, arg); | 387     apply(arguments, arg); | 
| 581   } | 388   } | 
| 582 | 389 | 
| 583   @override | 390   @override | 
| 584   visitStaticFieldSet( | 391   visitStaticFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 585       SendSet node, | 392     visits.add( | 
| 586       FieldElement field, | 393         new Visit(VisitKind.VISIT_STATIC_FIELD_SET, element: field, rhs: rhs)); | 
| 587       Node rhs, |  | 
| 588       arg) { |  | 
| 589     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_SET, |  | 
| 590         element: field, rhs: rhs)); |  | 
| 591     super.visitStaticFieldSet(node, field, rhs, arg); | 394     super.visitStaticFieldSet(node, field, rhs, arg); | 
| 592   } | 395   } | 
| 593 | 396 | 
| 594   @override | 397   @override | 
| 595   visitFinalStaticFieldSet( | 398   visitFinalStaticFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 596       SendSet node, |  | 
| 597       FieldElement field, |  | 
| 598       Node rhs, |  | 
| 599       arg) { |  | 
| 600     visits.add(new Visit(VisitKind.VISIT_FINAL_STATIC_FIELD_SET, | 399     visits.add(new Visit(VisitKind.VISIT_FINAL_STATIC_FIELD_SET, | 
| 601         element: field, rhs: rhs)); | 400         element: field, rhs: rhs)); | 
| 602     super.visitFinalStaticFieldSet(node, field, rhs, arg); | 401     super.visitFinalStaticFieldSet(node, field, rhs, arg); | 
| 603   } | 402   } | 
| 604 | 403 | 
| 605   @override | 404   @override | 
| 606   visitStaticFunctionGet( | 405   visitStaticFunctionGet(Send node, MethodElement function, arg) { | 
| 607       Send node, | 406     visits | 
| 608       MethodElement function, | 407         .add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_GET, element: function)); | 
| 609       arg) { |  | 
| 610     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_GET, |  | 
| 611         element: function)); |  | 
| 612   } | 408   } | 
| 613 | 409 | 
| 614   @override | 410   @override | 
| 615   visitStaticFunctionSet( | 411   visitStaticFunctionSet(SendSet node, MethodElement function, Node rhs, arg) { | 
| 616       SendSet node, |  | 
| 617       MethodElement function, |  | 
| 618       Node rhs, |  | 
| 619       arg) { |  | 
| 620     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_SET, | 412     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_SET, | 
| 621         element: function, rhs: rhs)); | 413         element: function, rhs: rhs)); | 
| 622     super.visitStaticFunctionSet(node, function, rhs, arg); | 414     super.visitStaticFunctionSet(node, function, rhs, arg); | 
| 623   } | 415   } | 
| 624 | 416 | 
| 625   @override | 417   @override | 
| 626   visitStaticFunctionInvoke( | 418   visitStaticFunctionInvoke(Send node, MethodElement function, | 
| 627       Send node, | 419       NodeList arguments, CallStructure callStructure, arg) { | 
| 628       MethodElement function, |  | 
| 629       NodeList arguments, |  | 
| 630       CallStructure callStructure, |  | 
| 631       arg) { |  | 
| 632     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_INVOKE, | 420     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_INVOKE, | 
| 633         element: function, arguments: arguments)); | 421         element: function, arguments: arguments)); | 
| 634     super.visitStaticFunctionInvoke( | 422     super.visitStaticFunctionInvoke( | 
| 635         node, function, arguments, callStructure, arg); | 423         node, function, arguments, callStructure, arg); | 
| 636   } | 424   } | 
| 637 | 425 | 
| 638   @override | 426   @override | 
| 639   visitStaticFunctionIncompatibleInvoke( | 427   visitStaticFunctionIncompatibleInvoke(Send node, MethodElement function, | 
| 640       Send node, | 428       NodeList arguments, CallStructure callStructure, arg) { | 
| 641       MethodElement function, |  | 
| 642       NodeList arguments, |  | 
| 643       CallStructure callStructure, |  | 
| 644       arg) { |  | 
| 645     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_INCOMPATIBLE_INVOKE, | 429     visits.add(new Visit(VisitKind.VISIT_STATIC_FUNCTION_INCOMPATIBLE_INVOKE, | 
| 646         element: function, arguments: arguments)); | 430         element: function, arguments: arguments)); | 
| 647     apply(arguments, arg); | 431     apply(arguments, arg); | 
| 648   } | 432   } | 
| 649 | 433 | 
| 650   @override | 434   @override | 
| 651   visitStaticGetterGet( | 435   visitStaticGetterGet(Send node, FunctionElement getter, arg) { | 
| 652       Send node, | 436     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_GET, element: getter)); | 
| 653       FunctionElement getter, |  | 
| 654       arg) { |  | 
| 655     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_GET, |  | 
| 656         element: getter)); |  | 
| 657     super.visitStaticGetterGet(node, getter, arg); | 437     super.visitStaticGetterGet(node, getter, arg); | 
| 658   } | 438   } | 
| 659 | 439 | 
| 660   @override | 440   @override | 
| 661   visitStaticGetterSet( | 441   visitStaticGetterSet(SendSet node, MethodElement getter, Node rhs, arg) { | 
| 662       SendSet node, |  | 
| 663       MethodElement getter, |  | 
| 664       Node rhs, |  | 
| 665       arg) { |  | 
| 666     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SET, | 442     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SET, | 
| 667         element: getter, rhs: rhs)); | 443         element: getter, rhs: rhs)); | 
| 668     super.visitStaticGetterSet(node, getter, rhs, arg); | 444     super.visitStaticGetterSet(node, getter, rhs, arg); | 
| 669   } | 445   } | 
| 670 | 446 | 
| 671   @override | 447   @override | 
| 672   visitStaticGetterInvoke( | 448   visitStaticGetterInvoke(Send node, FunctionElement getter, NodeList arguments, | 
| 673       Send node, | 449       CallStructure callStructure, arg) { | 
| 674       FunctionElement getter, |  | 
| 675       NodeList arguments, |  | 
| 676       CallStructure callStructure, |  | 
| 677       arg) { |  | 
| 678     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_INVOKE, | 450     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_INVOKE, | 
| 679         element: getter, arguments: arguments)); | 451         element: getter, arguments: arguments)); | 
| 680     super.visitStaticGetterInvoke(node, getter, arguments, callStructure, arg); | 452     super.visitStaticGetterInvoke(node, getter, arguments, callStructure, arg); | 
| 681   } | 453   } | 
| 682 | 454 | 
| 683   @override | 455   @override | 
| 684   visitStaticSetterInvoke( | 456   visitStaticSetterInvoke(Send node, FunctionElement setter, NodeList arguments, | 
| 685       Send node, | 457       CallStructure callStructure, arg) { | 
| 686       FunctionElement setter, |  | 
| 687       NodeList arguments, |  | 
| 688       CallStructure callStructure, |  | 
| 689       arg) { |  | 
| 690     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_INVOKE, | 458     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_INVOKE, | 
| 691         element: setter, arguments: arguments)); | 459         element: setter, arguments: arguments)); | 
| 692     super.visitStaticSetterInvoke(node, setter, arguments, callStructure, arg); | 460     super.visitStaticSetterInvoke(node, setter, arguments, callStructure, arg); | 
| 693   } | 461   } | 
| 694 | 462 | 
| 695   @override | 463   @override | 
| 696   visitStaticSetterGet( | 464   visitStaticSetterGet(Send node, FunctionElement getter, arg) { | 
| 697       Send node, | 465     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_GET, element: getter)); | 
| 698       FunctionElement getter, |  | 
| 699       arg) { |  | 
| 700     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_GET, |  | 
| 701         element: getter)); |  | 
| 702     super.visitStaticSetterGet(node, getter, arg); | 466     super.visitStaticSetterGet(node, getter, arg); | 
| 703   } | 467   } | 
| 704 | 468 | 
| 705   @override | 469   @override | 
| 706   visitStaticSetterSet( | 470   visitStaticSetterSet(SendSet node, FunctionElement setter, Node rhs, arg) { | 
| 707       SendSet node, |  | 
| 708       FunctionElement setter, |  | 
| 709       Node rhs, |  | 
| 710       arg) { |  | 
| 711     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_SET, | 471     visits.add(new Visit(VisitKind.VISIT_STATIC_SETTER_SET, | 
| 712         element: setter, rhs: rhs)); | 472         element: setter, rhs: rhs)); | 
| 713     super.visitStaticSetterSet(node, setter, rhs, arg); | 473     super.visitStaticSetterSet(node, setter, rhs, arg); | 
| 714   } | 474   } | 
| 715 | 475 | 
| 716   @override | 476   @override | 
| 717   visitSuperBinary( | 477   visitSuperBinary(Send node, FunctionElement function, BinaryOperator operator, | 
| 718       Send node, | 478       Node argument, arg) { | 
| 719       FunctionElement function, |  | 
| 720       BinaryOperator operator, |  | 
| 721       Node argument, |  | 
| 722       arg) { |  | 
| 723     visits.add(new Visit(VisitKind.VISIT_SUPER_BINARY, | 479     visits.add(new Visit(VisitKind.VISIT_SUPER_BINARY, | 
| 724         element: function, operator: operator, right: argument)); | 480         element: function, operator: operator, right: argument)); | 
| 725     apply(argument, arg); | 481     apply(argument, arg); | 
| 726   } | 482   } | 
| 727 | 483 | 
| 728   @override | 484   @override | 
| 729   visitUnresolvedSuperBinary( | 485   visitUnresolvedSuperBinary( | 
| 730       Send node, | 486       Send node, Element element, BinaryOperator operator, Node argument, arg) { | 
| 731       Element element, |  | 
| 732       BinaryOperator operator, |  | 
| 733       Node argument, |  | 
| 734       arg) { |  | 
| 735     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_BINARY, | 487     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_BINARY, | 
| 736         operator: operator, right: argument)); | 488         operator: operator, right: argument)); | 
| 737     apply(argument, arg); | 489     apply(argument, arg); | 
| 738   } | 490   } | 
| 739 | 491 | 
| 740   @override | 492   @override | 
| 741   visitSuperIndex( | 493   visitSuperIndex(Send node, FunctionElement function, Node index, arg) { | 
| 742       Send node, |  | 
| 743       FunctionElement function, |  | 
| 744       Node index, |  | 
| 745       arg) { |  | 
| 746     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX, | 494     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX, | 
| 747             element: function, index: index)); | 495         element: function, index: index)); | 
| 748     apply(index, arg); | 496     apply(index, arg); | 
| 749   } | 497   } | 
| 750 | 498 | 
| 751   @override | 499   @override | 
| 752   visitUnresolvedSuperIndex( | 500   visitUnresolvedSuperIndex(Send node, Element element, Node index, arg) { | 
| 753       Send node, | 501     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX, index: index)); | 
| 754       Element element, |  | 
| 755       Node index, |  | 
| 756       arg) { |  | 
| 757     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX, |  | 
| 758         index: index)); |  | 
| 759     apply(index, arg); | 502     apply(index, arg); | 
| 760   } | 503   } | 
| 761 | 504 | 
| 762   @override | 505   @override | 
| 763   visitSuperNotEquals( | 506   visitSuperNotEquals(Send node, FunctionElement function, Node argument, arg) { | 
| 764       Send node, |  | 
| 765       FunctionElement function, |  | 
| 766       Node argument, |  | 
| 767       arg) { |  | 
| 768     visits.add(new Visit(VisitKind.VISIT_SUPER_NOT_EQUALS, | 507     visits.add(new Visit(VisitKind.VISIT_SUPER_NOT_EQUALS, | 
| 769             element: function, right: argument)); | 508         element: function, right: argument)); | 
| 770     apply(argument, arg); | 509     apply(argument, arg); | 
| 771   } | 510   } | 
| 772 | 511 | 
| 773   @override | 512   @override | 
| 774   visitThisGet(Identifier node, arg) { | 513   visitThisGet(Identifier node, arg) { | 
| 775     visits.add(new Visit(VisitKind.VISIT_THIS_GET)); | 514     visits.add(new Visit(VisitKind.VISIT_THIS_GET)); | 
| 776   } | 515   } | 
| 777 | 516 | 
| 778   @override | 517   @override | 
| 779   visitThisInvoke( | 518   visitThisInvoke( | 
| 780       Send node, | 519       Send node, NodeList arguments, CallStructure callStructure, arg) { | 
| 781       NodeList arguments, |  | 
| 782       CallStructure callStructure, |  | 
| 783       arg) { |  | 
| 784     visits.add(new Visit(VisitKind.VISIT_THIS_INVOKE, arguments: arguments)); | 520     visits.add(new Visit(VisitKind.VISIT_THIS_INVOKE, arguments: arguments)); | 
| 785     apply(arguments, arg); | 521     apply(arguments, arg); | 
| 786   } | 522   } | 
| 787 | 523 | 
| 788   @override | 524   @override | 
| 789   visitThisPropertyGet( | 525   visitThisPropertyGet(Send node, Name name, arg) { | 
| 790       Send node, | 526     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_GET, name: name)); | 
| 791       Name name, |  | 
| 792       arg) { |  | 
| 793     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_GET, |  | 
| 794                          name: name)); |  | 
| 795     super.visitThisPropertyGet(node, name, arg); | 527     super.visitThisPropertyGet(node, name, arg); | 
| 796   } | 528   } | 
| 797 | 529 | 
| 798   @override | 530   @override | 
| 799   visitThisPropertyInvoke( | 531   visitThisPropertyInvoke( | 
| 800       Send node, | 532       Send node, NodeList arguments, Selector selector, arg) { | 
| 801       NodeList arguments, |  | 
| 802       Selector selector, |  | 
| 803       arg) { |  | 
| 804     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_INVOKE, | 533     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_INVOKE, | 
| 805                          name: selector.name, arguments: arguments)); | 534         name: selector.name, arguments: arguments)); | 
| 806     super.visitThisPropertyInvoke(node, arguments, selector, arg); | 535     super.visitThisPropertyInvoke(node, arguments, selector, arg); | 
| 807   } | 536   } | 
| 808 | 537 | 
| 809   @override | 538   @override | 
| 810   visitThisPropertySet( | 539   visitThisPropertySet(SendSet node, Name name, Node rhs, arg) { | 
| 811       SendSet node, | 540     visits.add( | 
| 812       Name name, | 541         new Visit(VisitKind.VISIT_THIS_PROPERTY_SET, name: name, rhs: rhs)); | 
| 813       Node rhs, |  | 
| 814       arg) { |  | 
| 815     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_SET, |  | 
| 816                          name: name, rhs: rhs)); |  | 
| 817     super.visitThisPropertySet(node, name, rhs, arg); | 542     super.visitThisPropertySet(node, name, rhs, arg); | 
| 818   } | 543   } | 
| 819 | 544 | 
| 820   @override | 545   @override | 
| 821   visitTopLevelFieldGet( | 546   visitTopLevelFieldGet(Send node, FieldElement field, arg) { | 
| 822       Send node, |  | 
| 823       FieldElement field, |  | 
| 824       arg) { |  | 
| 825     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_GET, element: field)); | 547     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_GET, element: field)); | 
| 826   } | 548   } | 
| 827 | 549 | 
| 828   @override | 550   @override | 
| 829   visitTopLevelFieldInvoke( | 551   visitTopLevelFieldInvoke(Send node, FieldElement field, NodeList arguments, | 
| 830       Send node, | 552       CallStructure callStructure, arg) { | 
| 831       FieldElement field, |  | 
| 832       NodeList arguments, |  | 
| 833       CallStructure callStructure, |  | 
| 834       arg) { |  | 
| 835     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_INVOKE, | 553     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_INVOKE, | 
| 836         element: field, arguments: arguments)); | 554         element: field, arguments: arguments)); | 
| 837     apply(arguments, arg); | 555     apply(arguments, arg); | 
| 838   } | 556   } | 
| 839 | 557 | 
| 840   @override | 558   @override | 
| 841   visitTopLevelFieldSet( | 559   visitTopLevelFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 842       SendSet node, |  | 
| 843       FieldElement field, |  | 
| 844       Node rhs, |  | 
| 845       arg) { |  | 
| 846     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_SET, | 560     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_SET, | 
| 847         element: field, rhs: rhs)); | 561         element: field, rhs: rhs)); | 
| 848     super.visitTopLevelFieldSet(node, field, rhs, arg); | 562     super.visitTopLevelFieldSet(node, field, rhs, arg); | 
| 849   } | 563   } | 
| 850 | 564 | 
| 851   @override | 565   @override | 
| 852   visitFinalTopLevelFieldSet( | 566   visitFinalTopLevelFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 853       SendSet node, |  | 
| 854       FieldElement field, |  | 
| 855       Node rhs, |  | 
| 856       arg) { |  | 
| 857     visits.add(new Visit(VisitKind.VISIT_FINAL_TOP_LEVEL_FIELD_SET, | 567     visits.add(new Visit(VisitKind.VISIT_FINAL_TOP_LEVEL_FIELD_SET, | 
| 858         element: field, rhs: rhs)); | 568         element: field, rhs: rhs)); | 
| 859     super.visitFinalTopLevelFieldSet(node, field, rhs, arg); | 569     super.visitFinalTopLevelFieldSet(node, field, rhs, arg); | 
| 860   } | 570   } | 
| 861 | 571 | 
| 862   @override | 572   @override | 
| 863   visitTopLevelFunctionGet( | 573   visitTopLevelFunctionGet(Send node, MethodElement function, arg) { | 
| 864       Send node, | 574     visits.add( | 
| 865       MethodElement function, | 575         new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_GET, element: function)); | 
| 866       arg) { |  | 
| 867     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_GET, |  | 
| 868         element: function)); |  | 
| 869   } | 576   } | 
| 870 | 577 | 
| 871   @override | 578   @override | 
| 872   visitTopLevelFunctionSet( | 579   visitTopLevelFunctionSet( | 
| 873       SendSet node, | 580       SendSet node, MethodElement function, Node rhs, arg) { | 
| 874       MethodElement function, |  | 
| 875       Node rhs, |  | 
| 876       arg) { |  | 
| 877     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_SET, | 581     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_SET, | 
| 878         element: function, rhs: rhs)); | 582         element: function, rhs: rhs)); | 
| 879     super.visitTopLevelFunctionSet(node, function, rhs, arg); | 583     super.visitTopLevelFunctionSet(node, function, rhs, arg); | 
| 880   } | 584   } | 
| 881 | 585 | 
| 882   @override | 586   @override | 
| 883   visitTopLevelFunctionInvoke( | 587   visitTopLevelFunctionInvoke(Send node, MethodElement function, | 
| 884       Send node, | 588       NodeList arguments, CallStructure callStructure, arg) { | 
| 885       MethodElement function, |  | 
| 886       NodeList arguments, |  | 
| 887       CallStructure callStructure, |  | 
| 888       arg) { |  | 
| 889     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_INVOKE, | 589     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_INVOKE, | 
| 890         element: function, arguments: arguments)); | 590         element: function, arguments: arguments)); | 
| 891     apply(arguments, arg); | 591     apply(arguments, arg); | 
| 892   } | 592   } | 
| 893 | 593 | 
| 894   @override | 594   @override | 
| 895   visitTopLevelFunctionIncompatibleInvoke( | 595   visitTopLevelFunctionIncompatibleInvoke(Send node, MethodElement function, | 
| 896       Send node, | 596       NodeList arguments, CallStructure callStructure, arg) { | 
| 897       MethodElement function, |  | 
| 898       NodeList arguments, |  | 
| 899       CallStructure callStructure, |  | 
| 900       arg) { |  | 
| 901     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_INCOMPATIBLE_INVOKE, | 597     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FUNCTION_INCOMPATIBLE_INVOKE, | 
| 902         element: function, arguments: arguments)); | 598         element: function, arguments: arguments)); | 
| 903     apply(arguments, arg); | 599     apply(arguments, arg); | 
| 904   } | 600   } | 
| 905 | 601 | 
| 906   @override | 602   @override | 
| 907   visitTopLevelGetterGet( | 603   visitTopLevelGetterGet(Send node, FunctionElement getter, arg) { | 
| 908       Send node, | 604     visits | 
| 909       FunctionElement getter, | 605         .add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_GET, element: getter)); | 
| 910       arg) { |  | 
| 911     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_GET, |  | 
| 912         element: getter)); |  | 
| 913     super.visitTopLevelGetterGet(node, getter, arg); | 606     super.visitTopLevelGetterGet(node, getter, arg); | 
| 914   } | 607   } | 
| 915 | 608 | 
| 916   @override | 609   @override | 
| 917   visitTopLevelSetterGet( | 610   visitTopLevelSetterGet(Send node, FunctionElement setter, arg) { | 
| 918       Send node, | 611     visits | 
| 919       FunctionElement setter, | 612         .add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_GET, element: setter)); | 
| 920       arg) { |  | 
| 921     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_GET, |  | 
| 922         element: setter)); |  | 
| 923     super.visitTopLevelSetterGet(node, setter, arg); | 613     super.visitTopLevelSetterGet(node, setter, arg); | 
| 924   } | 614   } | 
| 925 | 615 | 
| 926   @override | 616   @override | 
| 927   visitTopLevelGetterInvoke( | 617   visitTopLevelGetterInvoke(Send node, FunctionElement getter, | 
| 928       Send node, | 618       NodeList arguments, CallStructure callStructure, arg) { | 
| 929       FunctionElement getter, |  | 
| 930       NodeList arguments, |  | 
| 931       CallStructure callStructure, |  | 
| 932       arg) { |  | 
| 933     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_INVOKE, | 619     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_INVOKE, | 
| 934         element: getter, arguments: arguments)); | 620         element: getter, arguments: arguments)); | 
| 935     super.visitTopLevelGetterInvoke( | 621     super | 
| 936         node, getter, arguments, callStructure, arg); | 622         .visitTopLevelGetterInvoke(node, getter, arguments, callStructure, arg); | 
| 937   } | 623   } | 
| 938 | 624 | 
| 939   @override | 625   @override | 
| 940   visitTopLevelSetterInvoke( | 626   visitTopLevelSetterInvoke(Send node, FunctionElement setter, | 
| 941       Send node, | 627       NodeList arguments, CallStructure callStructure, arg) { | 
| 942       FunctionElement setter, |  | 
| 943       NodeList arguments, |  | 
| 944       CallStructure callStructure, |  | 
| 945       arg) { |  | 
| 946     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_INVOKE, | 628     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_INVOKE, | 
| 947         element: setter, arguments: arguments)); | 629         element: setter, arguments: arguments)); | 
| 948     super.visitTopLevelSetterInvoke( | 630     super | 
| 949         node, setter, arguments, callStructure, arg); | 631         .visitTopLevelSetterInvoke(node, setter, arguments, callStructure, arg); | 
| 950   } | 632   } | 
| 951 | 633 | 
| 952   @override | 634   @override | 
| 953   visitTopLevelGetterSet( | 635   visitTopLevelGetterSet(SendSet node, FunctionElement getter, Node rhs, arg) { | 
| 954       SendSet node, |  | 
| 955       FunctionElement getter, |  | 
| 956       Node rhs, |  | 
| 957       arg) { |  | 
| 958     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SET, | 636     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SET, | 
| 959         element: getter, rhs: rhs)); | 637         element: getter, rhs: rhs)); | 
| 960     super.visitTopLevelGetterSet(node, getter, rhs, arg); | 638     super.visitTopLevelGetterSet(node, getter, rhs, arg); | 
| 961   } | 639   } | 
| 962 | 640 | 
| 963   @override | 641   @override | 
| 964   visitTopLevelSetterSet( | 642   visitTopLevelSetterSet(SendSet node, FunctionElement setter, Node rhs, arg) { | 
| 965       SendSet node, |  | 
| 966       FunctionElement setter, |  | 
| 967       Node rhs, |  | 
| 968       arg) { |  | 
| 969     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_SET, | 643     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_SETTER_SET, | 
| 970         element: setter, rhs: rhs)); | 644         element: setter, rhs: rhs)); | 
| 971     super.visitTopLevelSetterSet(node, setter, rhs, arg); | 645     super.visitTopLevelSetterSet(node, setter, rhs, arg); | 
| 972   } | 646   } | 
| 973 | 647 | 
| 974   @override | 648   @override | 
| 975   visitTypeVariableTypeLiteralGet( | 649   visitTypeVariableTypeLiteralGet(Send node, TypeVariableElement element, arg) { | 
| 976       Send node, |  | 
| 977       TypeVariableElement element, |  | 
| 978       arg) { |  | 
| 979     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_GET, | 650     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_GET, | 
| 980         element: element)); | 651         element: element)); | 
| 981   } | 652   } | 
| 982 | 653 | 
| 983   @override | 654   @override | 
| 984   visitTypeVariableTypeLiteralInvoke( | 655   visitTypeVariableTypeLiteralInvoke(Send node, TypeVariableElement element, | 
| 985       Send node, | 656       NodeList arguments, CallStructure callStructure, arg) { | 
| 986       TypeVariableElement element, |  | 
| 987       NodeList arguments, |  | 
| 988       CallStructure callStructure, |  | 
| 989       arg) { |  | 
| 990     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_INVOKE, | 657     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_INVOKE, | 
| 991         element: element, arguments: arguments)); | 658         element: element, arguments: arguments)); | 
| 992     apply(arguments, arg); | 659     apply(arguments, arg); | 
| 993   } | 660   } | 
| 994 | 661 | 
| 995   @override | 662   @override | 
| 996   visitTypeVariableTypeLiteralSet( | 663   visitTypeVariableTypeLiteralSet( | 
| 997       SendSet node, | 664       SendSet node, TypeVariableElement element, Node rhs, arg) { | 
| 998       TypeVariableElement element, |  | 
| 999       Node rhs, |  | 
| 1000       arg) { |  | 
| 1001     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_SET, | 665     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_SET, | 
| 1002         element: element, rhs: rhs)); | 666         element: element, rhs: rhs)); | 
| 1003     super.visitTypeVariableTypeLiteralSet(node, element, rhs, arg); | 667     super.visitTypeVariableTypeLiteralSet(node, element, rhs, arg); | 
| 1004   } | 668   } | 
| 1005 | 669 | 
| 1006   @override | 670   @override | 
| 1007   visitTypedefTypeLiteralGet( | 671   visitTypedefTypeLiteralGet(Send node, ConstantExpression constant, arg) { | 
| 1008       Send node, |  | 
| 1009       ConstantExpression constant, |  | 
| 1010       arg) { |  | 
| 1011     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_GET, | 672     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_GET, | 
| 1012         constant: constant.toDartText())); | 673         constant: constant.toDartText())); | 
| 1013   } | 674   } | 
| 1014 | 675 | 
| 1015   @override | 676   @override | 
| 1016   visitTypedefTypeLiteralInvoke( | 677   visitTypedefTypeLiteralInvoke(Send node, ConstantExpression constant, | 
| 1017       Send node, | 678       NodeList arguments, CallStructure callStructure, arg) { | 
| 1018       ConstantExpression constant, |  | 
| 1019       NodeList arguments, |  | 
| 1020       CallStructure callStructure, |  | 
| 1021       arg) { |  | 
| 1022     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_INVOKE, | 679     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_INVOKE, | 
| 1023         constant: constant.toDartText(), arguments: arguments)); | 680         constant: constant.toDartText(), arguments: arguments)); | 
| 1024     apply(arguments, arg); | 681     apply(arguments, arg); | 
| 1025   } | 682   } | 
| 1026 | 683 | 
| 1027   @override | 684   @override | 
| 1028   visitTypedefTypeLiteralSet( | 685   visitTypedefTypeLiteralSet( | 
| 1029       SendSet node, | 686       SendSet node, ConstantExpression constant, Node rhs, arg) { | 
| 1030       ConstantExpression constant, |  | 
| 1031       Node rhs, |  | 
| 1032       arg) { |  | 
| 1033     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_SET, | 687     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_SET, | 
| 1034         constant: constant.toDartText(), rhs: rhs)); | 688         constant: constant.toDartText(), rhs: rhs)); | 
| 1035     super.visitTypedefTypeLiteralSet(node, constant, rhs, arg); | 689     super.visitTypedefTypeLiteralSet(node, constant, rhs, arg); | 
| 1036   } | 690   } | 
| 1037 | 691 | 
| 1038   @override | 692   @override | 
| 1039   visitUnary( | 693   visitUnary(Send node, UnaryOperator operator, Node expression, arg) { | 
| 1040       Send node, |  | 
| 1041       UnaryOperator operator, |  | 
| 1042       Node expression, |  | 
| 1043       arg) { |  | 
| 1044     visits.add(new Visit(VisitKind.VISIT_UNARY, | 694     visits.add(new Visit(VisitKind.VISIT_UNARY, | 
| 1045         expression: expression, operator: operator)); | 695         expression: expression, operator: operator)); | 
| 1046     super.visitUnary(node, operator, expression, arg); | 696     super.visitUnary(node, operator, expression, arg); | 
| 1047   } | 697   } | 
| 1048 | 698 | 
| 1049   @override | 699   @override | 
| 1050   errorUndefinedUnaryExpression( | 700   errorUndefinedUnaryExpression( | 
| 1051       Send node, | 701       Send node, Operator operator, Node expression, arg) { | 
| 1052       Operator operator, |  | 
| 1053       Node expression, |  | 
| 1054       arg) { |  | 
| 1055     visits.add(new Visit(VisitKind.ERROR_UNDEFINED_UNARY_EXPRESSION, | 702     visits.add(new Visit(VisitKind.ERROR_UNDEFINED_UNARY_EXPRESSION, | 
| 1056         expression: expression, operator: operator)); | 703         expression: expression, operator: operator)); | 
| 1057     super.errorUndefinedUnaryExpression(node, operator, expression, arg); | 704     super.errorUndefinedUnaryExpression(node, operator, expression, arg); | 
| 1058   } | 705   } | 
| 1059 | 706 | 
| 1060   @override | 707   @override | 
| 1061   visitNot( | 708   visitNot(Send node, Node expression, arg) { | 
| 1062       Send node, |  | 
| 1063       Node expression, |  | 
| 1064       arg) { |  | 
| 1065     visits.add(new Visit(VisitKind.VISIT_NOT, expression: expression)); | 709     visits.add(new Visit(VisitKind.VISIT_NOT, expression: expression)); | 
| 1066     apply(expression, arg); | 710     apply(expression, arg); | 
| 1067   } | 711   } | 
| 1068 | 712 | 
| 1069   @override | 713   @override | 
| 1070   visitSuperFieldGet( | 714   visitSuperFieldGet(Send node, FieldElement field, arg) { | 
| 1071       Send node, |  | 
| 1072       FieldElement field, |  | 
| 1073       arg) { |  | 
| 1074     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_GET, element: field)); | 715     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_GET, element: field)); | 
| 1075   } | 716   } | 
| 1076 | 717 | 
| 1077   @override | 718   @override | 
| 1078   visitUnresolvedSuperGet( | 719   visitUnresolvedSuperGet(Send node, Element element, arg) { | 
| 1079       Send node, |  | 
| 1080       Element element, |  | 
| 1081       arg) { |  | 
| 1082     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GET)); | 720     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GET)); | 
| 1083     return super.visitUnresolvedSuperGet(node, element, arg); | 721     return super.visitUnresolvedSuperGet(node, element, arg); | 
| 1084   } | 722   } | 
| 1085 | 723 | 
| 1086   @override | 724   @override | 
| 1087   visitUnresolvedSuperSet( | 725   visitUnresolvedSuperSet(Send node, Element element, Node rhs, arg) { | 
| 1088       Send node, |  | 
| 1089       Element element, |  | 
| 1090       Node rhs, |  | 
| 1091       arg) { |  | 
| 1092     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SET, rhs: rhs)); | 726     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SET, rhs: rhs)); | 
| 1093     return super.visitUnresolvedSuperSet(node, element, rhs, arg); | 727     return super.visitUnresolvedSuperSet(node, element, rhs, arg); | 
| 1094   } | 728   } | 
| 1095 | 729 | 
| 1096   @override | 730   @override | 
| 1097   visitSuperFieldInvoke( | 731   visitSuperFieldInvoke(Send node, FieldElement field, NodeList arguments, | 
| 1098       Send node, | 732       CallStructure callStructure, arg) { | 
| 1099       FieldElement field, |  | 
| 1100       NodeList arguments, |  | 
| 1101       CallStructure callStructure, |  | 
| 1102       arg) { |  | 
| 1103     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_INVOKE, | 733     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_INVOKE, | 
| 1104         element: field, arguments: arguments)); | 734         element: field, arguments: arguments)); | 
| 1105     apply(arguments, arg); | 735     apply(arguments, arg); | 
| 1106   } | 736   } | 
| 1107 | 737 | 
| 1108   @override | 738   @override | 
| 1109   visitUnresolvedSuperInvoke( | 739   visitUnresolvedSuperInvoke( | 
| 1110       Send node, | 740       Send node, Element element, NodeList arguments, Selector selector, arg) { | 
| 1111       Element element, |  | 
| 1112       NodeList arguments, |  | 
| 1113       Selector selector, |  | 
| 1114       arg) { |  | 
| 1115     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INVOKE, | 741     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INVOKE, | 
| 1116         arguments: arguments)); | 742         arguments: arguments)); | 
| 1117     apply(arguments, arg); | 743     apply(arguments, arg); | 
| 1118   } | 744   } | 
| 1119 | 745 | 
| 1120   @override | 746   @override | 
| 1121   visitSuperFieldSet( | 747   visitSuperFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 1122       SendSet node, | 748     visits.add( | 
| 1123       FieldElement field, | 749         new Visit(VisitKind.VISIT_SUPER_FIELD_SET, element: field, rhs: rhs)); | 
| 1124       Node rhs, |  | 
| 1125       arg) { |  | 
| 1126     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SET, |  | 
| 1127         element: field, rhs: rhs)); |  | 
| 1128     super.visitSuperFieldSet(node, field, rhs, arg); | 750     super.visitSuperFieldSet(node, field, rhs, arg); | 
| 1129   } | 751   } | 
| 1130 | 752 | 
| 1131   @override | 753   @override | 
| 1132   visitFinalSuperFieldSet( | 754   visitFinalSuperFieldSet(SendSet node, FieldElement field, Node rhs, arg) { | 
| 1133       SendSet node, |  | 
| 1134       FieldElement field, |  | 
| 1135       Node rhs, |  | 
| 1136       arg) { |  | 
| 1137     visits.add(new Visit(VisitKind.VISIT_FINAL_SUPER_FIELD_SET, | 755     visits.add(new Visit(VisitKind.VISIT_FINAL_SUPER_FIELD_SET, | 
| 1138         element: field, rhs: rhs)); | 756         element: field, rhs: rhs)); | 
| 1139     super.visitFinalSuperFieldSet(node, field, rhs, arg); | 757     super.visitFinalSuperFieldSet(node, field, rhs, arg); | 
| 1140   } | 758   } | 
| 1141 | 759 | 
| 1142   @override | 760   @override | 
| 1143   visitSuperMethodGet( | 761   visitSuperMethodGet(Send node, MethodElement method, arg) { | 
| 1144       Send node, |  | 
| 1145       MethodElement method, |  | 
| 1146       arg) { |  | 
| 1147     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_GET, element: method)); | 762     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_GET, element: method)); | 
| 1148   } | 763   } | 
| 1149 | 764 | 
| 1150   @override | 765   @override | 
| 1151   visitSuperMethodSet( | 766   visitSuperMethodSet(SendSet node, MethodElement method, Node rhs, arg) { | 
| 1152       SendSet node, | 767     visits.add( | 
| 1153       MethodElement method, | 768         new Visit(VisitKind.VISIT_SUPER_METHOD_SET, element: method, rhs: rhs)); | 
| 1154       Node rhs, |  | 
| 1155       arg) { |  | 
| 1156     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SET, |  | 
| 1157         element: method, rhs: rhs)); |  | 
| 1158     super.visitSuperMethodSet(node, method, rhs, arg); | 769     super.visitSuperMethodSet(node, method, rhs, arg); | 
| 1159   } | 770   } | 
| 1160 | 771 | 
| 1161   @override | 772   @override | 
| 1162   visitSuperMethodInvoke( | 773   visitSuperMethodInvoke(Send node, MethodElement method, NodeList arguments, | 
| 1163       Send node, | 774       CallStructure callStructure, arg) { | 
| 1164       MethodElement method, |  | 
| 1165       NodeList arguments, |  | 
| 1166       CallStructure callStructure, |  | 
| 1167       arg) { |  | 
| 1168     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_INVOKE, | 775     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_INVOKE, | 
| 1169         element: method, arguments: arguments)); | 776         element: method, arguments: arguments)); | 
| 1170     apply(arguments, arg); | 777     apply(arguments, arg); | 
| 1171   } | 778   } | 
| 1172 | 779 | 
| 1173   @override | 780   @override | 
| 1174   visitSuperMethodIncompatibleInvoke( | 781   visitSuperMethodIncompatibleInvoke(Send node, MethodElement method, | 
| 1175       Send node, | 782       NodeList arguments, CallStructure callStructure, arg) { | 
| 1176       MethodElement method, |  | 
| 1177       NodeList arguments, |  | 
| 1178       CallStructure callStructure, |  | 
| 1179       arg) { |  | 
| 1180     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_INCOMPATIBLE_INVOKE, | 783     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_INCOMPATIBLE_INVOKE, | 
| 1181         element: method, arguments: arguments)); | 784         element: method, arguments: arguments)); | 
| 1182     apply(arguments, arg); | 785     apply(arguments, arg); | 
| 1183   } | 786   } | 
| 1184 | 787 | 
| 1185   @override | 788   @override | 
| 1186   visitSuperGetterGet( | 789   visitSuperGetterGet(Send node, FunctionElement getter, arg) { | 
| 1187       Send node, |  | 
| 1188       FunctionElement getter, |  | 
| 1189       arg) { |  | 
| 1190     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_GET, element: getter)); | 790     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_GET, element: getter)); | 
| 1191     super.visitSuperGetterGet(node, getter, arg); | 791     super.visitSuperGetterGet(node, getter, arg); | 
| 1192   } | 792   } | 
| 1193 | 793 | 
| 1194   @override | 794   @override | 
| 1195   visitSuperSetterGet( | 795   visitSuperSetterGet(Send node, FunctionElement setter, arg) { | 
| 1196       Send node, |  | 
| 1197       FunctionElement setter, |  | 
| 1198       arg) { |  | 
| 1199     visits.add(new Visit(VisitKind.VISIT_SUPER_SETTER_GET, element: setter)); | 796     visits.add(new Visit(VisitKind.VISIT_SUPER_SETTER_GET, element: setter)); | 
| 1200     super.visitSuperSetterGet(node, setter, arg); | 797     super.visitSuperSetterGet(node, setter, arg); | 
| 1201   } | 798   } | 
| 1202 | 799 | 
| 1203   @override | 800   @override | 
| 1204   visitSuperGetterInvoke( | 801   visitSuperGetterInvoke(Send node, FunctionElement getter, NodeList arguments, | 
| 1205       Send node, | 802       CallStructure callStructure, arg) { | 
| 1206       FunctionElement getter, |  | 
| 1207       NodeList arguments, |  | 
| 1208       CallStructure callStructure, |  | 
| 1209       arg) { |  | 
| 1210     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_INVOKE, | 803     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_INVOKE, | 
| 1211         element: getter, arguments: arguments)); | 804         element: getter, arguments: arguments)); | 
| 1212     super.visitSuperGetterInvoke(node, getter, arguments, callStructure, arg); | 805     super.visitSuperGetterInvoke(node, getter, arguments, callStructure, arg); | 
| 1213   } | 806   } | 
| 1214 | 807 | 
| 1215   @override | 808   @override | 
| 1216   visitSuperSetterInvoke( | 809   visitSuperSetterInvoke(Send node, FunctionElement setter, NodeList arguments, | 
| 1217       Send node, | 810       CallStructure callStructure, arg) { | 
| 1218       FunctionElement setter, |  | 
| 1219       NodeList arguments, |  | 
| 1220       CallStructure callStructure, |  | 
| 1221       arg) { |  | 
| 1222     visits.add(new Visit(VisitKind.VISIT_SUPER_SETTER_INVOKE, | 811     visits.add(new Visit(VisitKind.VISIT_SUPER_SETTER_INVOKE, | 
| 1223         element: setter, arguments: arguments)); | 812         element: setter, arguments: arguments)); | 
| 1224     super.visitSuperSetterInvoke(node, setter, arguments, callStructure, arg); | 813     super.visitSuperSetterInvoke(node, setter, arguments, callStructure, arg); | 
| 1225   } | 814   } | 
| 1226 | 815 | 
| 1227   @override | 816   @override | 
| 1228   visitSuperGetterSet( | 817   visitSuperGetterSet(SendSet node, FunctionElement getter, Node rhs, arg) { | 
| 1229       SendSet node, | 818     visits.add( | 
| 1230       FunctionElement getter, | 819         new Visit(VisitKind.VISIT_SUPER_GETTER_SET, element: getter, rhs: rhs)); | 
| 1231       Node rhs, |  | 
| 1232       arg) { |  | 
| 1233     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SET, |  | 
| 1234         element: getter, rhs: rhs)); |  | 
| 1235     super.visitSuperGetterSet(node, getter, rhs, arg); | 820     super.visitSuperGetterSet(node, getter, rhs, arg); | 
| 1236   } | 821   } | 
| 1237 | 822 | 
| 1238   @override | 823   @override | 
| 1239   visitSuperSetterSet( | 824   visitSuperSetterSet(SendSet node, FunctionElement setter, Node rhs, arg) { | 
| 1240       SendSet node, | 825     visits.add( | 
| 1241       FunctionElement setter, | 826         new Visit(VisitKind.VISIT_SUPER_SETTER_SET, element: setter, rhs: rhs)); | 
| 1242       Node rhs, |  | 
| 1243       arg) { |  | 
| 1244     visits.add(new Visit(VisitKind.VISIT_SUPER_SETTER_SET, |  | 
| 1245         element: setter, rhs: rhs)); |  | 
| 1246     super.visitSuperSetterSet(node, setter, rhs, arg); | 827     super.visitSuperSetterSet(node, setter, rhs, arg); | 
| 1247   } | 828   } | 
| 1248 | 829 | 
| 1249   @override | 830   @override | 
| 1250   visitSuperUnary( | 831   visitSuperUnary( | 
| 1251       Send node, | 832       Send node, UnaryOperator operator, FunctionElement function, arg) { | 
| 1252       UnaryOperator operator, |  | 
| 1253       FunctionElement function, |  | 
| 1254       arg) { |  | 
| 1255     visits.add(new Visit(VisitKind.VISIT_SUPER_UNARY, | 833     visits.add(new Visit(VisitKind.VISIT_SUPER_UNARY, | 
| 1256         element: function, operator: operator)); | 834         element: function, operator: operator)); | 
| 1257   } | 835   } | 
| 1258 | 836 | 
| 1259   @override | 837   @override | 
| 1260   visitUnresolvedSuperUnary( | 838   visitUnresolvedSuperUnary( | 
| 1261       Send node, | 839       Send node, UnaryOperator operator, Element element, arg) { | 
| 1262       UnaryOperator operator, | 840     visits.add( | 
| 1263       Element element, | 841         new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_UNARY, operator: operator)); | 
| 1264       arg) { |  | 
| 1265     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_UNARY, |  | 
| 1266         operator: operator)); |  | 
| 1267   } | 842   } | 
| 1268 | 843 | 
| 1269   @override | 844   @override | 
| 1270   visitEquals( | 845   visitEquals(Send node, Node left, Node right, arg) { | 
| 1271       Send node, |  | 
| 1272       Node left, |  | 
| 1273       Node right, |  | 
| 1274       arg) { |  | 
| 1275     visits.add(new Visit(VisitKind.VISIT_EQUALS, left: left, right: right)); | 846     visits.add(new Visit(VisitKind.VISIT_EQUALS, left: left, right: right)); | 
| 1276     apply(left, arg); | 847     apply(left, arg); | 
| 1277     apply(right, arg); | 848     apply(right, arg); | 
| 1278   } | 849   } | 
| 1279 | 850 | 
| 1280   @override | 851   @override | 
| 1281   visitSuperEquals( | 852   visitSuperEquals(Send node, FunctionElement function, Node argument, arg) { | 
| 1282       Send node, |  | 
| 1283       FunctionElement function, |  | 
| 1284       Node argument, |  | 
| 1285       arg) { |  | 
| 1286     visits.add(new Visit(VisitKind.VISIT_SUPER_EQUALS, | 853     visits.add(new Visit(VisitKind.VISIT_SUPER_EQUALS, | 
| 1287         element: function, right: argument)); | 854         element: function, right: argument)); | 
| 1288     apply(argument, arg); | 855     apply(argument, arg); | 
| 1289   } | 856   } | 
| 1290 | 857 | 
| 1291   @override | 858   @override | 
| 1292   visitIndexSet( | 859   visitIndexSet(Send node, Node receiver, Node index, Node rhs, arg) { | 
| 1293       Send node, |  | 
| 1294       Node receiver, |  | 
| 1295       Node index, |  | 
| 1296       Node rhs, |  | 
| 1297       arg) { |  | 
| 1298     visits.add(new Visit(VisitKind.VISIT_INDEX_SET, | 860     visits.add(new Visit(VisitKind.VISIT_INDEX_SET, | 
| 1299         receiver: receiver, index: index, rhs: rhs)); | 861         receiver: receiver, index: index, rhs: rhs)); | 
| 1300     apply(receiver, arg); | 862     apply(receiver, arg); | 
| 1301     apply(index, arg); | 863     apply(index, arg); | 
| 1302     apply(rhs, arg); | 864     apply(rhs, arg); | 
| 1303   } | 865   } | 
| 1304 | 866 | 
| 1305   @override | 867   @override | 
| 1306   visitSuperIndexSet( | 868   visitSuperIndexSet( | 
| 1307       Send node, | 869       Send node, FunctionElement function, Node index, Node rhs, arg) { | 
| 1308       FunctionElement function, |  | 
| 1309       Node index, |  | 
| 1310       Node rhs, |  | 
| 1311       arg) { |  | 
| 1312     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_SET, | 870     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_SET, | 
| 1313         element: function, index: index, rhs: rhs)); | 871         element: function, index: index, rhs: rhs)); | 
| 1314     apply(index, arg); | 872     apply(index, arg); | 
| 1315     apply(rhs, arg); | 873     apply(rhs, arg); | 
| 1316   } | 874   } | 
| 1317 | 875 | 
| 1318   @override | 876   @override | 
| 1319   visitDynamicPropertyCompound( | 877   visitDynamicPropertyCompound(Send node, Node receiver, Name name, | 
| 1320       Send node, | 878       AssignmentOperator operator, Node rhs, arg) { | 
| 1321       Node receiver, |  | 
| 1322       Name name, |  | 
| 1323       AssignmentOperator operator, |  | 
| 1324       Node rhs, |  | 
| 1325       arg) { |  | 
| 1326     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_COMPOUND, | 879     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_COMPOUND, | 
| 1327         receiver: receiver, operator: operator, rhs: rhs, | 880         receiver: receiver, operator: operator, rhs: rhs, name: name)); | 
| 1328         name: name)); | 881     super | 
| 1329     super.visitDynamicPropertyCompound( | 882         .visitDynamicPropertyCompound(node, receiver, name, operator, rhs, arg); | 
| 1330         node, receiver, name, operator, rhs, arg); |  | 
| 1331   } | 883   } | 
| 1332 | 884 | 
| 1333   @override | 885   @override | 
| 1334   visitFinalLocalVariableCompound( | 886   visitFinalLocalVariableCompound(Send node, LocalVariableElement variable, | 
| 1335       Send node, | 887       AssignmentOperator operator, Node rhs, arg) { | 
| 1336       LocalVariableElement variable, |  | 
| 1337       AssignmentOperator operator, |  | 
| 1338       Node rhs, |  | 
| 1339       arg) { |  | 
| 1340     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_COMPOUND, | 888     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_COMPOUND, | 
| 1341         element: variable, operator: operator, rhs: rhs)); | 889         element: variable, operator: operator, rhs: rhs)); | 
| 1342     apply(rhs, arg); | 890     apply(rhs, arg); | 
| 1343   } | 891   } | 
| 1344 | 892 | 
| 1345   @override | 893   @override | 
| 1346   visitFinalLocalVariablePrefix( | 894   visitFinalLocalVariablePrefix( | 
| 1347       Send node, | 895       Send node, LocalVariableElement variable, IncDecOperator operator, arg) { | 
| 1348       LocalVariableElement variable, |  | 
| 1349       IncDecOperator operator, |  | 
| 1350       arg) { |  | 
| 1351     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_PREFIX, | 896     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_PREFIX, | 
| 1352         element: variable, operator: operator)); | 897         element: variable, operator: operator)); | 
| 1353   } | 898   } | 
| 1354 | 899 | 
| 1355   @override | 900   @override | 
| 1356   visitFinalLocalVariablePostfix( | 901   visitFinalLocalVariablePostfix( | 
| 1357       Send node, | 902       Send node, LocalVariableElement variable, IncDecOperator operator, arg) { | 
| 1358       LocalVariableElement variable, |  | 
| 1359       IncDecOperator operator, |  | 
| 1360       arg) { |  | 
| 1361     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_POSTFIX, | 903     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_POSTFIX, | 
| 1362         element: variable, operator: operator)); | 904         element: variable, operator: operator)); | 
| 1363   } | 905   } | 
| 1364 | 906 | 
| 1365   @override | 907   @override | 
| 1366   visitFinalParameterCompound( | 908   visitFinalParameterCompound(Send node, ParameterElement parameter, | 
| 1367       Send node, | 909       AssignmentOperator operator, Node rhs, arg) { | 
| 1368       ParameterElement parameter, |  | 
| 1369       AssignmentOperator operator, |  | 
| 1370       Node rhs, |  | 
| 1371       arg) { |  | 
| 1372     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_COMPOUND, | 910     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_COMPOUND, | 
| 1373         element: parameter, operator: operator, rhs: rhs)); | 911         element: parameter, operator: operator, rhs: rhs)); | 
| 1374     apply(rhs, arg); | 912     apply(rhs, arg); | 
| 1375   } | 913   } | 
| 1376 | 914 | 
| 1377   @override | 915   @override | 
| 1378   visitFinalParameterPrefix( | 916   visitFinalParameterPrefix( | 
| 1379       Send node, | 917       Send node, ParameterElement parameter, IncDecOperator operator, arg) { | 
| 1380       ParameterElement parameter, |  | 
| 1381       IncDecOperator operator, |  | 
| 1382       arg) { |  | 
| 1383     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_PREFIX, | 918     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_PREFIX, | 
| 1384         element: parameter, operator: operator)); | 919         element: parameter, operator: operator)); | 
| 1385   } | 920   } | 
| 1386 | 921 | 
| 1387   @override | 922   @override | 
| 1388   visitFinalParameterPostfix( | 923   visitFinalParameterPostfix( | 
| 1389       Send node, | 924       Send node, ParameterElement parameter, IncDecOperator operator, arg) { | 
| 1390       ParameterElement parameter, |  | 
| 1391       IncDecOperator operator, |  | 
| 1392       arg) { |  | 
| 1393     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_POSTFIX, | 925     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_POSTFIX, | 
| 1394         element: parameter, operator: operator)); | 926         element: parameter, operator: operator)); | 
| 1395   } | 927   } | 
| 1396 | 928 | 
| 1397   @override | 929   @override | 
| 1398   visitFinalStaticFieldCompound( | 930   visitFinalStaticFieldCompound(Send node, FieldElement field, | 
| 1399       Send node, | 931       AssignmentOperator operator, Node rhs, arg) { | 
| 1400       FieldElement field, |  | 
| 1401       AssignmentOperator operator, |  | 
| 1402       Node rhs, |  | 
| 1403       arg) { |  | 
| 1404     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_COMPOUND, | 932     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_COMPOUND, | 
| 1405         element: field, operator: operator, rhs: rhs)); | 933         element: field, operator: operator, rhs: rhs)); | 
| 1406     apply(rhs, arg); | 934     apply(rhs, arg); | 
| 1407   } | 935   } | 
| 1408 | 936 | 
| 1409   @override | 937   @override | 
| 1410   visitFinalStaticFieldPostfix( | 938   visitFinalStaticFieldPostfix( | 
| 1411       Send node, | 939       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1412       FieldElement field, |  | 
| 1413       IncDecOperator operator, |  | 
| 1414       arg) { |  | 
| 1415     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_POSTFIX, | 940     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_POSTFIX, | 
| 1416         element: field, operator: operator)); | 941         element: field, operator: operator)); | 
| 1417   } | 942   } | 
| 1418 | 943 | 
| 1419   @override | 944   @override | 
| 1420   visitFinalStaticFieldPrefix( | 945   visitFinalStaticFieldPrefix( | 
| 1421       Send node, | 946       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1422       FieldElement field, |  | 
| 1423       IncDecOperator operator, |  | 
| 1424       arg) { |  | 
| 1425     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_PREFIX, | 947     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_PREFIX, | 
| 1426         element: field, operator: operator)); | 948         element: field, operator: operator)); | 
| 1427   } | 949   } | 
| 1428 | 950 | 
| 1429   @override | 951   @override | 
| 1430   visitFinalSuperFieldCompound( | 952   visitFinalSuperFieldCompound(Send node, FieldElement field, | 
| 1431       Send node, | 953       AssignmentOperator operator, Node rhs, arg) { | 
| 1432       FieldElement field, |  | 
| 1433       AssignmentOperator operator, |  | 
| 1434       Node rhs, |  | 
| 1435       arg) { |  | 
| 1436     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_COMPOUND, | 954     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_COMPOUND, | 
| 1437         element: field, operator: operator, rhs: rhs)); | 955         element: field, operator: operator, rhs: rhs)); | 
| 1438     apply(rhs, arg); | 956     apply(rhs, arg); | 
| 1439   } | 957   } | 
| 1440 | 958 | 
| 1441   @override | 959   @override | 
| 1442   visitFinalTopLevelFieldCompound( | 960   visitFinalTopLevelFieldCompound(Send node, FieldElement field, | 
| 1443       Send node, | 961       AssignmentOperator operator, Node rhs, arg) { | 
| 1444       FieldElement field, |  | 
| 1445       AssignmentOperator operator, |  | 
| 1446       Node rhs, |  | 
| 1447       arg) { |  | 
| 1448     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_COMPOUND, | 962     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_COMPOUND, | 
| 1449         element: field, operator: operator, rhs: rhs)); | 963         element: field, operator: operator, rhs: rhs)); | 
| 1450     apply(rhs, arg); | 964     apply(rhs, arg); | 
| 1451   } | 965   } | 
| 1452 | 966 | 
| 1453   @override | 967   @override | 
| 1454   visitFinalTopLevelFieldPostfix( | 968   visitFinalTopLevelFieldPostfix( | 
| 1455       Send node, | 969       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1456       FieldElement field, |  | 
| 1457       IncDecOperator operator, |  | 
| 1458       arg) { |  | 
| 1459     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_POSTFIX, | 970     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_POSTFIX, | 
| 1460         element: field, operator: operator)); | 971         element: field, operator: operator)); | 
| 1461   } | 972   } | 
| 1462 | 973 | 
| 1463   @override | 974   @override | 
| 1464   visitFinalTopLevelFieldPrefix( | 975   visitFinalTopLevelFieldPrefix( | 
| 1465       Send node, | 976       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1466       FieldElement field, |  | 
| 1467       IncDecOperator operator, |  | 
| 1468       arg) { |  | 
| 1469     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_PREFIX, | 977     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_PREFIX, | 
| 1470         element: field, operator: operator)); | 978         element: field, operator: operator)); | 
| 1471   } | 979   } | 
| 1472 | 980 | 
| 1473   @override | 981   @override | 
| 1474   visitLocalFunctionCompound( | 982   visitLocalFunctionCompound(Send node, LocalFunctionElement function, | 
| 1475       Send node, | 983       AssignmentOperator operator, Node rhs, arg) { | 
| 1476       LocalFunctionElement function, |  | 
| 1477       AssignmentOperator operator, |  | 
| 1478       Node rhs, |  | 
| 1479       arg) { |  | 
| 1480     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_COMPOUND, | 984     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_COMPOUND, | 
| 1481         element: function, operator: operator, rhs: rhs)); | 985         element: function, operator: operator, rhs: rhs)); | 
| 1482     apply(rhs, arg); | 986     apply(rhs, arg); | 
| 1483   } | 987   } | 
| 1484 | 988 | 
| 1485   @override | 989   @override | 
| 1486   visitLocalVariableCompound( | 990   visitLocalVariableCompound(Send node, LocalVariableElement variable, | 
| 1487       Send node, | 991       AssignmentOperator operator, Node rhs, arg) { | 
| 1488       LocalVariableElement variable, |  | 
| 1489       AssignmentOperator operator, |  | 
| 1490       Node rhs, |  | 
| 1491       arg) { |  | 
| 1492     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_COMPOUND, | 992     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_COMPOUND, | 
| 1493         element: variable, operator: operator, rhs: rhs)); | 993         element: variable, operator: operator, rhs: rhs)); | 
| 1494     apply(rhs, arg); | 994     apply(rhs, arg); | 
| 1495   } | 995   } | 
| 1496 | 996 | 
| 1497   @override | 997   @override | 
| 1498   visitParameterCompound( | 998   visitParameterCompound(Send node, ParameterElement parameter, | 
| 1499       Send node, | 999       AssignmentOperator operator, Node rhs, arg) { | 
| 1500       ParameterElement parameter, |  | 
| 1501       AssignmentOperator operator, |  | 
| 1502       Node rhs, |  | 
| 1503       arg) { |  | 
| 1504     visits.add(new Visit(VisitKind.VISIT_PARAMETER_COMPOUND, | 1000     visits.add(new Visit(VisitKind.VISIT_PARAMETER_COMPOUND, | 
| 1505         element: parameter, operator: operator, rhs: rhs)); | 1001         element: parameter, operator: operator, rhs: rhs)); | 
| 1506     apply(rhs, arg); | 1002     apply(rhs, arg); | 
| 1507   } | 1003   } | 
| 1508 | 1004 | 
| 1509   @override | 1005   @override | 
| 1510   visitStaticFieldCompound( | 1006   visitStaticFieldCompound(Send node, FieldElement field, | 
| 1511       Send node, | 1007       AssignmentOperator operator, Node rhs, arg) { | 
| 1512       FieldElement field, |  | 
| 1513       AssignmentOperator operator, |  | 
| 1514       Node rhs, |  | 
| 1515       arg) { |  | 
| 1516     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_COMPOUND, | 1008     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_COMPOUND, | 
| 1517         element: field, operator: operator, rhs: rhs)); | 1009         element: field, operator: operator, rhs: rhs)); | 
| 1518     apply(rhs, arg); | 1010     apply(rhs, arg); | 
| 1519   } | 1011   } | 
| 1520 | 1012 | 
| 1521   @override | 1013   @override | 
| 1522   visitStaticGetterSetterCompound( | 1014   visitStaticGetterSetterCompound(Send node, FunctionElement getter, | 
| 1523       Send node, | 1015       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1524       FunctionElement getter, |  | 
| 1525       FunctionElement setter, |  | 
| 1526       AssignmentOperator operator, |  | 
| 1527       Node rhs, |  | 
| 1528       arg) { |  | 
| 1529     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_COMPOUND, | 1016     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_COMPOUND, | 
| 1530         operator: operator, rhs: rhs, | 1017         operator: operator, rhs: rhs, getter: getter, setter: setter)); | 
| 1531         getter: getter, setter: setter)); |  | 
| 1532     apply(rhs, arg); | 1018     apply(rhs, arg); | 
| 1533   } | 1019   } | 
| 1534 | 1020 | 
| 1535   @override | 1021   @override | 
| 1536   visitSuperFieldCompound( | 1022   visitSuperFieldCompound(Send node, FieldElement field, | 
| 1537       Send node, | 1023       AssignmentOperator operator, Node rhs, arg) { | 
| 1538       FieldElement field, |  | 
| 1539       AssignmentOperator operator, |  | 
| 1540       Node rhs, |  | 
| 1541       arg) { |  | 
| 1542     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_COMPOUND, | 1024     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_COMPOUND, | 
| 1543         element: field, operator: operator, rhs: rhs)); | 1025         element: field, operator: operator, rhs: rhs)); | 
| 1544     apply(rhs, arg); | 1026     apply(rhs, arg); | 
| 1545   } | 1027   } | 
| 1546 | 1028 | 
| 1547   @override | 1029   @override | 
| 1548   visitSuperGetterSetterCompound( | 1030   visitSuperGetterSetterCompound(Send node, FunctionElement getter, | 
| 1549       Send node, | 1031       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1550       FunctionElement getter, |  | 
| 1551       FunctionElement setter, |  | 
| 1552       AssignmentOperator operator, |  | 
| 1553       Node rhs, |  | 
| 1554       arg) { |  | 
| 1555     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_COMPOUND, | 1032     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_COMPOUND, | 
| 1556         operator: operator, rhs: rhs, | 1033         operator: operator, rhs: rhs, getter: getter, setter: setter)); | 
| 1557         getter: getter, setter: setter)); |  | 
| 1558     apply(rhs, arg); | 1034     apply(rhs, arg); | 
| 1559   } | 1035   } | 
| 1560 | 1036 | 
| 1561   @override | 1037   @override | 
| 1562   visitThisPropertyCompound( | 1038   visitThisPropertyCompound( | 
| 1563       Send node, | 1039       Send node, Name name, AssignmentOperator operator, Node rhs, arg) { | 
| 1564       Name name, |  | 
| 1565       AssignmentOperator operator, |  | 
| 1566       Node rhs, |  | 
| 1567       arg) { |  | 
| 1568     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_COMPOUND, | 1040     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_COMPOUND, | 
| 1569         name: name, operator: operator, rhs: rhs)); | 1041         name: name, operator: operator, rhs: rhs)); | 
| 1570     super.visitThisPropertyCompound(node, name, operator, rhs, arg); | 1042     super.visitThisPropertyCompound(node, name, operator, rhs, arg); | 
| 1571   } | 1043   } | 
| 1572 | 1044 | 
| 1573   @override | 1045   @override | 
| 1574   visitTopLevelFieldCompound( | 1046   visitTopLevelFieldCompound(Send node, FieldElement field, | 
| 1575       Send node, | 1047       AssignmentOperator operator, Node rhs, arg) { | 
| 1576       FieldElement field, |  | 
| 1577       AssignmentOperator operator, |  | 
| 1578       Node rhs, |  | 
| 1579       arg) { |  | 
| 1580     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_COMPOUND, | 1048     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_COMPOUND, | 
| 1581         element: field, operator: operator, rhs: rhs)); | 1049         element: field, operator: operator, rhs: rhs)); | 
| 1582     apply(rhs, arg); | 1050     apply(rhs, arg); | 
| 1583   } | 1051   } | 
| 1584 | 1052 | 
| 1585   @override | 1053   @override | 
| 1586   visitTopLevelGetterSetterCompound( | 1054   visitTopLevelGetterSetterCompound(Send node, FunctionElement getter, | 
| 1587       Send node, | 1055       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1588       FunctionElement getter, |  | 
| 1589       FunctionElement setter, |  | 
| 1590       AssignmentOperator operator, |  | 
| 1591       Node rhs, |  | 
| 1592       arg) { |  | 
| 1593     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_COMPOUND, | 1056     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_COMPOUND, | 
| 1594         operator: operator, rhs: rhs, | 1057         operator: operator, rhs: rhs, getter: getter, setter: setter)); | 
| 1595         getter: getter, setter: setter)); |  | 
| 1596     apply(rhs, arg); | 1058     apply(rhs, arg); | 
| 1597   } | 1059   } | 
| 1598 | 1060 | 
| 1599   @override | 1061   @override | 
| 1600   visitStaticMethodSetterCompound( | 1062   visitStaticMethodSetterCompound(Send node, FunctionElement method, | 
| 1601       Send node, | 1063       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1602       FunctionElement method, |  | 
| 1603       FunctionElement setter, |  | 
| 1604       AssignmentOperator operator, |  | 
| 1605       Node rhs, |  | 
| 1606       arg) { |  | 
| 1607     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_COMPOUND, | 1064     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_COMPOUND, | 
| 1608         operator: operator, rhs: rhs, | 1065         operator: operator, rhs: rhs, getter: method, setter: setter)); | 
| 1609         getter: method, setter: setter)); |  | 
| 1610     apply(rhs, arg); | 1066     apply(rhs, arg); | 
| 1611   } | 1067   } | 
| 1612 | 1068 | 
| 1613   @override | 1069   @override | 
| 1614   visitSuperFieldSetterCompound( | 1070   visitSuperFieldSetterCompound(Send node, FieldElement field, | 
| 1615       Send node, | 1071       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1616       FieldElement field, |  | 
| 1617       FunctionElement setter, |  | 
| 1618       AssignmentOperator operator, |  | 
| 1619       Node rhs, |  | 
| 1620       arg) { |  | 
| 1621     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_COMPOUND, | 1072     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_COMPOUND, | 
| 1622         operator: operator, rhs: rhs, | 1073         operator: operator, rhs: rhs, getter: field, setter: setter)); | 
| 1623         getter: field, setter: setter)); |  | 
| 1624     apply(rhs, arg); | 1074     apply(rhs, arg); | 
| 1625   } | 1075   } | 
| 1626 | 1076 | 
| 1627   @override | 1077   @override | 
| 1628   visitSuperGetterFieldCompound( | 1078   visitSuperGetterFieldCompound(Send node, FunctionElement getter, | 
| 1629       Send node, | 1079       FieldElement field, AssignmentOperator operator, Node rhs, arg) { | 
| 1630       FunctionElement getter, |  | 
| 1631       FieldElement field, |  | 
| 1632       AssignmentOperator operator, |  | 
| 1633       Node rhs, |  | 
| 1634       arg) { |  | 
| 1635     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_COMPOUND, | 1080     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_COMPOUND, | 
| 1636         operator: operator, rhs: rhs, | 1081         operator: operator, rhs: rhs, getter: getter, setter: field)); | 
| 1637         getter: getter, setter: field)); |  | 
| 1638     apply(rhs, arg); | 1082     apply(rhs, arg); | 
| 1639   } | 1083   } | 
| 1640 | 1084 | 
| 1641   @override | 1085   @override | 
| 1642   visitSuperMethodSetterCompound( | 1086   visitSuperMethodSetterCompound(Send node, FunctionElement method, | 
| 1643       Send node, | 1087       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1644       FunctionElement method, |  | 
| 1645       FunctionElement setter, |  | 
| 1646       AssignmentOperator operator, |  | 
| 1647       Node rhs, |  | 
| 1648       arg) { |  | 
| 1649     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_COMPOUND, | 1088     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_COMPOUND, | 
| 1650         getter: method, setter: setter, operator: operator, rhs: rhs)); | 1089         getter: method, setter: setter, operator: operator, rhs: rhs)); | 
| 1651     apply(rhs, arg); | 1090     apply(rhs, arg); | 
| 1652   } | 1091   } | 
| 1653 | 1092 | 
| 1654   @override | 1093   @override | 
| 1655   visitSuperMethodCompound( | 1094   visitSuperMethodCompound(Send node, FunctionElement method, | 
| 1656       Send node, | 1095       AssignmentOperator operator, Node rhs, arg) { | 
| 1657       FunctionElement method, |  | 
| 1658       AssignmentOperator operator, |  | 
| 1659       Node rhs, |  | 
| 1660       arg) { |  | 
| 1661     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_COMPOUND, | 1096     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_COMPOUND, | 
| 1662         element: method, operator: operator, rhs: rhs)); | 1097         element: method, operator: operator, rhs: rhs)); | 
| 1663     apply(rhs, arg); | 1098     apply(rhs, arg); | 
| 1664   } | 1099   } | 
| 1665 | 1100 | 
| 1666   @override | 1101   @override | 
| 1667   visitSuperMethodPrefix( | 1102   visitSuperMethodPrefix( | 
| 1668       Send node, | 1103       Send node, FunctionElement method, IncDecOperator operator, arg) { | 
| 1669       FunctionElement method, |  | 
| 1670       IncDecOperator operator, |  | 
| 1671       arg) { |  | 
| 1672     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_PREFIX, | 1104     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_PREFIX, | 
| 1673         element: method, operator: operator)); | 1105         element: method, operator: operator)); | 
| 1674   } | 1106   } | 
| 1675 | 1107 | 
| 1676   @override | 1108   @override | 
| 1677   visitSuperMethodPostfix( | 1109   visitSuperMethodPostfix( | 
| 1678       Send node, | 1110       Send node, FunctionElement method, IncDecOperator operator, arg) { | 
| 1679       FunctionElement method, |  | 
| 1680       IncDecOperator operator, |  | 
| 1681       arg) { |  | 
| 1682     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_POSTFIX, | 1111     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_POSTFIX, | 
| 1683         element: method, operator: operator)); | 1112         element: method, operator: operator)); | 
| 1684   } | 1113   } | 
| 1685 | 1114 | 
| 1686   @override | 1115   @override | 
| 1687   visitUnresolvedSuperCompound( | 1116   visitUnresolvedSuperCompound( | 
| 1688       Send node, | 1117       Send node, Element element, AssignmentOperator operator, Node rhs, arg) { | 
| 1689       Element element, |  | 
| 1690       AssignmentOperator operator, |  | 
| 1691       Node rhs, |  | 
| 1692       arg) { |  | 
| 1693     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_COMPOUND, | 1118     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_COMPOUND, | 
| 1694         operator: operator, rhs: rhs)); | 1119         operator: operator, rhs: rhs)); | 
| 1695     apply(rhs, arg); | 1120     apply(rhs, arg); | 
| 1696   } | 1121   } | 
| 1697 | 1122 | 
| 1698   @override | 1123   @override | 
| 1699   visitUnresolvedSuperPrefix( | 1124   visitUnresolvedSuperPrefix( | 
| 1700       Send node, | 1125       Send node, Element element, IncDecOperator operator, arg) { | 
| 1701       Element element, | 1126     visits.add( | 
| 1702       IncDecOperator operator, | 1127         new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_PREFIX, operator: operator)); | 
| 1703       arg) { |  | 
| 1704     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_PREFIX, |  | 
| 1705         operator: operator)); |  | 
| 1706   } | 1128   } | 
| 1707 | 1129 | 
| 1708   @override | 1130   @override | 
| 1709   visitUnresolvedSuperPostfix( | 1131   visitUnresolvedSuperPostfix( | 
| 1710       Send node, | 1132       Send node, Element element, IncDecOperator operator, arg) { | 
| 1711       Element element, |  | 
| 1712       IncDecOperator operator, |  | 
| 1713       arg) { |  | 
| 1714     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_POSTFIX, | 1133     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_POSTFIX, | 
| 1715         operator: operator)); | 1134         operator: operator)); | 
| 1716   } | 1135   } | 
| 1717 | 1136 | 
| 1718   @override | 1137   @override | 
| 1719   visitTopLevelMethodSetterCompound( | 1138   visitTopLevelMethodSetterCompound(Send node, FunctionElement method, | 
| 1720       Send node, | 1139       FunctionElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 1721       FunctionElement method, |  | 
| 1722       FunctionElement setter, |  | 
| 1723       AssignmentOperator operator, |  | 
| 1724       Node rhs, |  | 
| 1725       arg) { |  | 
| 1726     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_COMPOUND, | 1140     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_COMPOUND, | 
| 1727         getter: method, setter: setter, operator: operator, rhs: rhs)); | 1141         getter: method, setter: setter, operator: operator, rhs: rhs)); | 
| 1728     apply(rhs, arg); | 1142     apply(rhs, arg); | 
| 1729   } | 1143   } | 
| 1730 | 1144 | 
| 1731   @override | 1145   @override | 
| 1732   visitCompoundIndexSet( | 1146   visitCompoundIndexSet(Send node, Node receiver, Node index, | 
| 1733       Send node, | 1147       AssignmentOperator operator, Node rhs, arg) { | 
| 1734       Node receiver, |  | 
| 1735       Node index, |  | 
| 1736       AssignmentOperator operator, |  | 
| 1737       Node rhs, |  | 
| 1738       arg) { |  | 
| 1739     visits.add(new Visit(VisitKind.VISIT_COMPOUND_INDEX_SET, | 1148     visits.add(new Visit(VisitKind.VISIT_COMPOUND_INDEX_SET, | 
| 1740         receiver: receiver, index: index, rhs: rhs, operator: operator)); | 1149         receiver: receiver, index: index, rhs: rhs, operator: operator)); | 
| 1741     apply(receiver, arg); | 1150     apply(receiver, arg); | 
| 1742     apply(index, arg); | 1151     apply(index, arg); | 
| 1743     apply(rhs, arg); | 1152     apply(rhs, arg); | 
| 1744   } | 1153   } | 
| 1745 | 1154 | 
| 1746   @override | 1155   @override | 
| 1747   visitSuperCompoundIndexSet( | 1156   visitSuperCompoundIndexSet( | 
| 1748       Send node, | 1157       Send node, | 
| 1749       FunctionElement getter, | 1158       FunctionElement getter, | 
| 1750       FunctionElement setter, | 1159       FunctionElement setter, | 
| 1751       Node index, | 1160       Node index, | 
| 1752       AssignmentOperator operator, | 1161       AssignmentOperator operator, | 
| 1753       Node rhs, | 1162       Node rhs, | 
| 1754       arg) { | 1163       arg) { | 
| 1755     visits.add(new Visit(VisitKind.VISIT_SUPER_COMPOUND_INDEX_SET, | 1164     visits.add(new Visit(VisitKind.VISIT_SUPER_COMPOUND_INDEX_SET, | 
| 1756         getter: getter, setter: setter, | 1165         getter: getter, | 
| 1757         index: index, rhs: rhs, operator: operator)); | 1166         setter: setter, | 
|  | 1167         index: index, | 
|  | 1168         rhs: rhs, | 
|  | 1169         operator: operator)); | 
| 1758     apply(index, arg); | 1170     apply(index, arg); | 
| 1759     apply(rhs, arg); | 1171     apply(rhs, arg); | 
| 1760   } | 1172   } | 
| 1761 | 1173 | 
| 1762   @override | 1174   @override | 
| 1763   visitClassTypeLiteralCompound( | 1175   visitClassTypeLiteralCompound(Send node, ConstantExpression constant, | 
| 1764       Send node, | 1176       AssignmentOperator operator, Node rhs, arg) { | 
| 1765       ConstantExpression constant, |  | 
| 1766       AssignmentOperator operator, |  | 
| 1767       Node rhs, |  | 
| 1768       arg) { |  | 
| 1769     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_COMPOUND, | 1177     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_COMPOUND, | 
| 1770         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 1178         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 
| 1771     apply(rhs, arg); | 1179     apply(rhs, arg); | 
| 1772   } | 1180   } | 
| 1773 | 1181 | 
| 1774   @override | 1182   @override | 
| 1775   visitDynamicTypeLiteralCompound( | 1183   visitDynamicTypeLiteralCompound(Send node, ConstantExpression constant, | 
| 1776       Send node, | 1184       AssignmentOperator operator, Node rhs, arg) { | 
| 1777       ConstantExpression constant, |  | 
| 1778       AssignmentOperator operator, |  | 
| 1779       Node rhs, |  | 
| 1780       arg) { |  | 
| 1781     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_COMPOUND, | 1185     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_COMPOUND, | 
| 1782         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 1186         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 
| 1783     apply(rhs, arg); | 1187     apply(rhs, arg); | 
| 1784   } | 1188   } | 
| 1785 | 1189 | 
| 1786   @override | 1190   @override | 
| 1787   visitTypeVariableTypeLiteralCompound( | 1191   visitTypeVariableTypeLiteralCompound(Send node, TypeVariableElement element, | 
| 1788       Send node, | 1192       AssignmentOperator operator, Node rhs, arg) { | 
| 1789       TypeVariableElement element, |  | 
| 1790       AssignmentOperator operator, |  | 
| 1791       Node rhs, |  | 
| 1792       arg) { |  | 
| 1793     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_COMPOUND, | 1193     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_COMPOUND, | 
| 1794         element: element, operator: operator, rhs: rhs)); | 1194         element: element, operator: operator, rhs: rhs)); | 
| 1795     apply(rhs, arg); | 1195     apply(rhs, arg); | 
| 1796   } | 1196   } | 
| 1797 | 1197 | 
| 1798   @override | 1198   @override | 
| 1799   visitTypedefTypeLiteralCompound( | 1199   visitTypedefTypeLiteralCompound(Send node, ConstantExpression constant, | 
| 1800       Send node, | 1200       AssignmentOperator operator, Node rhs, arg) { | 
| 1801       ConstantExpression constant, |  | 
| 1802       AssignmentOperator operator, |  | 
| 1803       Node rhs, |  | 
| 1804       arg) { |  | 
| 1805     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_COMPOUND, | 1201     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_COMPOUND, | 
| 1806         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 1202         constant: constant.toDartText(), operator: operator, rhs: rhs)); | 
| 1807     apply(rhs, arg); | 1203     apply(rhs, arg); | 
| 1808   } | 1204   } | 
| 1809 | 1205 | 
| 1810   @override | 1206   @override | 
| 1811   visitLocalFunctionPrefix( | 1207   visitLocalFunctionPrefix( | 
| 1812       Send node, | 1208       Send node, LocalFunctionElement function, IncDecOperator operator, arg) { | 
| 1813       LocalFunctionElement function, |  | 
| 1814       IncDecOperator operator, |  | 
| 1815       arg) { |  | 
| 1816     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_PREFIX, | 1209     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_PREFIX, | 
| 1817         element: function, operator: operator)); | 1210         element: function, operator: operator)); | 
| 1818   } | 1211   } | 
| 1819 | 1212 | 
| 1820   @override | 1213   @override | 
| 1821   visitClassTypeLiteralPrefix( | 1214   visitClassTypeLiteralPrefix( | 
| 1822       Send node, | 1215       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 1823       ConstantExpression constant, |  | 
| 1824       IncDecOperator operator, |  | 
| 1825       arg) { |  | 
| 1826     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_PREFIX, | 1216     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_PREFIX, | 
| 1827         constant: constant.toDartText(), operator: operator)); | 1217         constant: constant.toDartText(), operator: operator)); | 
| 1828   } | 1218   } | 
| 1829 | 1219 | 
| 1830   @override | 1220   @override | 
| 1831   visitDynamicTypeLiteralPrefix( | 1221   visitDynamicTypeLiteralPrefix( | 
| 1832       Send node, | 1222       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 1833       ConstantExpression constant, |  | 
| 1834       IncDecOperator operator, |  | 
| 1835       arg) { |  | 
| 1836     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_PREFIX, | 1223     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_PREFIX, | 
| 1837         constant: constant.toDartText(), operator: operator)); | 1224         constant: constant.toDartText(), operator: operator)); | 
| 1838   } | 1225   } | 
| 1839 | 1226 | 
| 1840   @override | 1227   @override | 
| 1841   visitLocalVariablePrefix( | 1228   visitLocalVariablePrefix( | 
| 1842       Send node, | 1229       Send node, LocalVariableElement variable, IncDecOperator operator, arg) { | 
| 1843       LocalVariableElement variable, |  | 
| 1844       IncDecOperator operator, |  | 
| 1845       arg) { |  | 
| 1846     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_PREFIX, | 1230     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_PREFIX, | 
| 1847         element: variable, operator: operator)); | 1231         element: variable, operator: operator)); | 
| 1848   } | 1232   } | 
| 1849 | 1233 | 
| 1850   @override | 1234   @override | 
| 1851   visitParameterPrefix( | 1235   visitParameterPrefix( | 
| 1852       Send node, | 1236       Send node, ParameterElement parameter, IncDecOperator operator, arg) { | 
| 1853       ParameterElement parameter, |  | 
| 1854       IncDecOperator operator, |  | 
| 1855       arg) { |  | 
| 1856     visits.add(new Visit(VisitKind.VISIT_PARAMETER_PREFIX, | 1237     visits.add(new Visit(VisitKind.VISIT_PARAMETER_PREFIX, | 
| 1857         element: parameter, operator: operator)); | 1238         element: parameter, operator: operator)); | 
| 1858   } | 1239   } | 
| 1859 | 1240 | 
| 1860   @override | 1241   @override | 
| 1861   visitStaticFieldPrefix( | 1242   visitStaticFieldPrefix( | 
| 1862       Send node, | 1243       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1863       FieldElement field, |  | 
| 1864       IncDecOperator operator, |  | 
| 1865       arg) { |  | 
| 1866     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_PREFIX, | 1244     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_PREFIX, | 
| 1867         element: field, operator: operator)); | 1245         element: field, operator: operator)); | 
| 1868   } | 1246   } | 
| 1869 | 1247 | 
| 1870   @override | 1248   @override | 
| 1871   visitStaticGetterSetterPrefix( | 1249   visitStaticGetterSetterPrefix(Send node, FunctionElement getter, | 
| 1872       Send node, | 1250       FunctionElement setter, IncDecOperator operator, arg) { | 
| 1873       FunctionElement getter, |  | 
| 1874       FunctionElement setter, |  | 
| 1875       IncDecOperator operator, |  | 
| 1876       arg) { |  | 
| 1877     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_PREFIX, | 1251     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_PREFIX, | 
| 1878         getter: getter, setter: setter, operator: operator)); | 1252         getter: getter, setter: setter, operator: operator)); | 
| 1879   } | 1253   } | 
| 1880 | 1254 | 
| 1881   @override | 1255   @override | 
| 1882   visitStaticMethodSetterPrefix( | 1256   visitStaticMethodSetterPrefix(Send node, FunctionElement getter, | 
| 1883       Send node, | 1257       FunctionElement setter, IncDecOperator operator, arg) { | 
| 1884       FunctionElement getter, |  | 
| 1885       FunctionElement setter, |  | 
| 1886       IncDecOperator operator, |  | 
| 1887       arg) { |  | 
| 1888     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_PREFIX, | 1258     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_PREFIX, | 
| 1889         getter: getter, setter: setter, operator: operator)); | 1259         getter: getter, setter: setter, operator: operator)); | 
| 1890   } | 1260   } | 
| 1891 | 1261 | 
| 1892   @override | 1262   @override | 
| 1893   visitSuperFieldFieldCompound( | 1263   visitSuperFieldFieldCompound(Send node, FieldElement readField, | 
| 1894       Send node, | 1264       FieldElement writtenField, AssignmentOperator operator, Node rhs, arg) { | 
| 1895       FieldElement readField, |  | 
| 1896       FieldElement writtenField, |  | 
| 1897       AssignmentOperator operator, |  | 
| 1898       Node rhs, |  | 
| 1899       arg) { |  | 
| 1900     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_COMPOUND, | 1265     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_COMPOUND, | 
| 1901         getter: readField, setter: writtenField, operator: operator, rhs: rhs)); | 1266         getter: readField, setter: writtenField, operator: operator, rhs: rhs)); | 
| 1902     apply(rhs, arg); | 1267     apply(rhs, arg); | 
| 1903   } | 1268   } | 
| 1904 | 1269 | 
| 1905   @override | 1270   @override | 
| 1906   visitSuperFieldFieldPrefix( | 1271   visitSuperFieldFieldPrefix(Send node, FieldElement readField, | 
| 1907       Send node, | 1272       FieldElement writtenField, IncDecOperator operator, arg) { | 
| 1908       FieldElement readField, |  | 
| 1909       FieldElement writtenField, |  | 
| 1910       IncDecOperator operator, |  | 
| 1911       arg) { |  | 
| 1912     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_PREFIX, | 1273     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_PREFIX, | 
| 1913         getter: readField, setter: writtenField, operator: operator)); | 1274         getter: readField, setter: writtenField, operator: operator)); | 
| 1914   } | 1275   } | 
| 1915 | 1276 | 
| 1916   @override | 1277   @override | 
| 1917   visitSuperFieldPrefix( | 1278   visitSuperFieldPrefix( | 
| 1918       Send node, | 1279       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1919       FieldElement field, |  | 
| 1920       IncDecOperator operator, |  | 
| 1921       arg) { |  | 
| 1922     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_PREFIX, | 1280     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_PREFIX, | 
| 1923         element: field, operator: operator)); | 1281         element: field, operator: operator)); | 
| 1924   } | 1282   } | 
| 1925 | 1283 | 
| 1926   @override | 1284   @override | 
| 1927   visitFinalSuperFieldPrefix( | 1285   visitFinalSuperFieldPrefix( | 
| 1928       Send node, | 1286       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1929       FieldElement field, |  | 
| 1930       IncDecOperator operator, |  | 
| 1931       arg) { |  | 
| 1932     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_PREFIX, | 1287     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_PREFIX, | 
| 1933         element: field, operator: operator)); | 1288         element: field, operator: operator)); | 
| 1934   } | 1289   } | 
| 1935 | 1290 | 
| 1936   @override | 1291   @override | 
| 1937   visitSuperFieldSetterPrefix( | 1292   visitSuperFieldSetterPrefix(Send node, FieldElement field, | 
| 1938       Send node, | 1293       FunctionElement setter, IncDecOperator operator, arg) { | 
| 1939       FieldElement field, |  | 
| 1940       FunctionElement setter, |  | 
| 1941       IncDecOperator operator, |  | 
| 1942       arg) { |  | 
| 1943     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_PREFIX, | 1294     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_PREFIX, | 
| 1944         getter: field, setter: setter, operator: operator)); | 1295         getter: field, setter: setter, operator: operator)); | 
| 1945   } | 1296   } | 
| 1946 | 1297 | 
| 1947   @override | 1298   @override | 
| 1948   visitSuperGetterFieldPrefix( | 1299   visitSuperGetterFieldPrefix(Send node, FunctionElement getter, | 
| 1949       Send node, | 1300       FieldElement field, IncDecOperator operator, arg) { | 
| 1950       FunctionElement getter, |  | 
| 1951       FieldElement field, |  | 
| 1952       IncDecOperator operator, |  | 
| 1953       arg) { |  | 
| 1954     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_PREFIX, | 1301     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_PREFIX, | 
| 1955         getter: getter, setter: field, operator: operator)); | 1302         getter: getter, setter: field, operator: operator)); | 
| 1956   } | 1303   } | 
| 1957 | 1304 | 
| 1958   @override | 1305   @override | 
| 1959   visitSuperGetterSetterPrefix( | 1306   visitSuperGetterSetterPrefix(Send node, FunctionElement getter, | 
| 1960       Send node, | 1307       FunctionElement setter, IncDecOperator operator, arg) { | 
| 1961       FunctionElement getter, |  | 
| 1962       FunctionElement setter, |  | 
| 1963       IncDecOperator operator, |  | 
| 1964       arg) { |  | 
| 1965     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_PREFIX, | 1308     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_PREFIX, | 
| 1966         getter: getter, setter: setter, operator: operator)); | 1309         getter: getter, setter: setter, operator: operator)); | 
| 1967   } | 1310   } | 
| 1968 | 1311 | 
| 1969   @override | 1312   @override | 
| 1970   visitSuperMethodSetterPrefix( | 1313   visitSuperMethodSetterPrefix(Send node, FunctionElement method, | 
| 1971       Send node, | 1314       FunctionElement setter, IncDecOperator operator, arg) { | 
| 1972       FunctionElement method, |  | 
| 1973       FunctionElement setter, |  | 
| 1974       IncDecOperator operator, |  | 
| 1975       arg) { |  | 
| 1976     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_PREFIX, | 1315     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_PREFIX, | 
| 1977         getter: method, setter: setter, operator: operator)); | 1316         getter: method, setter: setter, operator: operator)); | 
| 1978   } | 1317   } | 
| 1979 | 1318 | 
| 1980   @override | 1319   @override | 
| 1981   visitThisPropertyPrefix( | 1320   visitThisPropertyPrefix(Send node, Name name, IncDecOperator operator, arg) { | 
| 1982       Send node, |  | 
| 1983       Name name, |  | 
| 1984       IncDecOperator operator, |  | 
| 1985       arg) { |  | 
| 1986     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_PREFIX, | 1321     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_PREFIX, | 
| 1987         name: name, operator: operator)); | 1322         name: name, operator: operator)); | 
| 1988     super.visitThisPropertyPrefix(node, name, operator, arg); | 1323     super.visitThisPropertyPrefix(node, name, operator, arg); | 
| 1989   } | 1324   } | 
| 1990 | 1325 | 
| 1991   @override | 1326   @override | 
| 1992   visitTopLevelFieldPrefix( | 1327   visitTopLevelFieldPrefix( | 
| 1993       Send node, | 1328       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 1994       FieldElement field, |  | 
| 1995       IncDecOperator operator, |  | 
| 1996       arg) { |  | 
| 1997     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_PREFIX, | 1329     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_PREFIX, | 
| 1998         element: field, operator: operator)); | 1330         element: field, operator: operator)); | 
| 1999   } | 1331   } | 
| 2000 | 1332 | 
| 2001   @override | 1333   @override | 
| 2002   visitTopLevelGetterSetterPrefix( | 1334   visitTopLevelGetterSetterPrefix(Send node, FunctionElement getter, | 
| 2003       Send node, | 1335       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2004       FunctionElement getter, |  | 
| 2005       FunctionElement setter, |  | 
| 2006       IncDecOperator operator, |  | 
| 2007       arg) { |  | 
| 2008     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_PREFIX, | 1336     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_PREFIX, | 
| 2009         getter: getter, setter: setter, operator: operator)); | 1337         getter: getter, setter: setter, operator: operator)); | 
| 2010   } | 1338   } | 
| 2011 | 1339 | 
| 2012   @override | 1340   @override | 
| 2013   visitTopLevelMethodSetterPrefix( | 1341   visitTopLevelMethodSetterPrefix(Send node, FunctionElement method, | 
| 2014       Send node, | 1342       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2015       FunctionElement method, |  | 
| 2016       FunctionElement setter, |  | 
| 2017       IncDecOperator operator, |  | 
| 2018       arg) { |  | 
| 2019     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_PREFIX, | 1343     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_PREFIX, | 
| 2020         getter: method, setter: setter, operator: operator)); | 1344         getter: method, setter: setter, operator: operator)); | 
| 2021   } | 1345   } | 
| 2022 | 1346 | 
| 2023   @override | 1347   @override | 
| 2024   visitTypeVariableTypeLiteralPrefix( | 1348   visitTypeVariableTypeLiteralPrefix( | 
| 2025       Send node, | 1349       Send node, TypeVariableElement element, IncDecOperator operator, arg) { | 
| 2026       TypeVariableElement element, |  | 
| 2027       IncDecOperator operator, |  | 
| 2028       arg) { |  | 
| 2029     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_PREFIX, | 1350     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_PREFIX, | 
| 2030         element: element, operator: operator)); | 1351         element: element, operator: operator)); | 
| 2031   } | 1352   } | 
| 2032 | 1353 | 
| 2033   @override | 1354   @override | 
| 2034   visitTypedefTypeLiteralPrefix( | 1355   visitTypedefTypeLiteralPrefix( | 
| 2035       Send node, | 1356       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 2036       ConstantExpression constant, |  | 
| 2037       IncDecOperator operator, |  | 
| 2038       arg) { |  | 
| 2039     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_PREFIX, | 1357     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_PREFIX, | 
| 2040         constant: constant.toDartText(), operator: operator)); | 1358         constant: constant.toDartText(), operator: operator)); | 
| 2041   } | 1359   } | 
| 2042 | 1360 | 
| 2043   @override | 1361   @override | 
| 2044   visitLocalFunctionPostfix( | 1362   visitLocalFunctionPostfix( | 
| 2045       Send node, | 1363       Send node, LocalFunctionElement function, IncDecOperator operator, arg) { | 
| 2046       LocalFunctionElement function, |  | 
| 2047       IncDecOperator operator, |  | 
| 2048       arg) { |  | 
| 2049     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_POSTFIX, | 1364     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_POSTFIX, | 
| 2050         element: function, operator: operator)); | 1365         element: function, operator: operator)); | 
| 2051   } | 1366   } | 
| 2052 | 1367 | 
| 2053   @override | 1368   @override | 
| 2054   visitClassTypeLiteralPostfix( | 1369   visitClassTypeLiteralPostfix( | 
| 2055       Send node, | 1370       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 2056       ConstantExpression constant, |  | 
| 2057       IncDecOperator operator, |  | 
| 2058       arg) { |  | 
| 2059     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_POSTFIX, | 1371     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_POSTFIX, | 
| 2060         constant: constant.toDartText(), operator: operator)); | 1372         constant: constant.toDartText(), operator: operator)); | 
| 2061   } | 1373   } | 
| 2062 | 1374 | 
| 2063   @override | 1375   @override | 
| 2064   visitDynamicTypeLiteralPostfix( | 1376   visitDynamicTypeLiteralPostfix( | 
| 2065       Send node, | 1377       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 2066       ConstantExpression constant, |  | 
| 2067       IncDecOperator operator, |  | 
| 2068       arg) { |  | 
| 2069     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_POSTFIX, | 1378     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_POSTFIX, | 
| 2070         constant: constant.toDartText(), operator: operator)); | 1379         constant: constant.toDartText(), operator: operator)); | 
| 2071   } | 1380   } | 
| 2072 | 1381 | 
| 2073   @override | 1382   @override | 
| 2074   visitLocalVariablePostfix( | 1383   visitLocalVariablePostfix( | 
| 2075       Send node, | 1384       Send node, LocalVariableElement variable, IncDecOperator operator, arg) { | 
| 2076       LocalVariableElement variable, |  | 
| 2077       IncDecOperator operator, |  | 
| 2078       arg) { |  | 
| 2079     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_POSTFIX, | 1385     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_POSTFIX, | 
| 2080         element: variable, operator: operator)); | 1386         element: variable, operator: operator)); | 
| 2081   } | 1387   } | 
| 2082 | 1388 | 
| 2083   @override | 1389   @override | 
| 2084   visitParameterPostfix( | 1390   visitParameterPostfix( | 
| 2085       Send node, | 1391       Send node, ParameterElement parameter, IncDecOperator operator, arg) { | 
| 2086       ParameterElement parameter, |  | 
| 2087       IncDecOperator operator, |  | 
| 2088       arg) { |  | 
| 2089     visits.add(new Visit(VisitKind.VISIT_PARAMETER_POSTFIX, | 1392     visits.add(new Visit(VisitKind.VISIT_PARAMETER_POSTFIX, | 
| 2090         element: parameter, operator: operator)); | 1393         element: parameter, operator: operator)); | 
| 2091   } | 1394   } | 
| 2092 | 1395 | 
| 2093   @override | 1396   @override | 
| 2094   visitStaticFieldPostfix( | 1397   visitStaticFieldPostfix( | 
| 2095       Send node, | 1398       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 2096       FieldElement field, |  | 
| 2097       IncDecOperator operator, |  | 
| 2098       arg) { |  | 
| 2099     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_POSTFIX, | 1399     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_POSTFIX, | 
| 2100         element: field, operator: operator)); | 1400         element: field, operator: operator)); | 
| 2101   } | 1401   } | 
| 2102 | 1402 | 
| 2103   @override | 1403   @override | 
| 2104   visitStaticGetterSetterPostfix( | 1404   visitStaticGetterSetterPostfix(Send node, FunctionElement getter, | 
| 2105       Send node, | 1405       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2106       FunctionElement getter, |  | 
| 2107       FunctionElement setter, |  | 
| 2108       IncDecOperator operator, |  | 
| 2109       arg) { |  | 
| 2110     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_POSTFIX, | 1406     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_POSTFIX, | 
| 2111         getter: getter, setter: setter, operator: operator)); | 1407         getter: getter, setter: setter, operator: operator)); | 
| 2112   } | 1408   } | 
| 2113 | 1409 | 
| 2114   @override | 1410   @override | 
| 2115   visitStaticMethodSetterPostfix( | 1411   visitStaticMethodSetterPostfix(Send node, FunctionElement getter, | 
| 2116       Send node, | 1412       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2117       FunctionElement getter, |  | 
| 2118       FunctionElement setter, |  | 
| 2119       IncDecOperator operator, |  | 
| 2120       arg) { |  | 
| 2121     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_POSTFIX, | 1413     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_POSTFIX, | 
| 2122         getter: getter, setter: setter, operator: operator)); | 1414         getter: getter, setter: setter, operator: operator)); | 
| 2123   } | 1415   } | 
| 2124 | 1416 | 
| 2125   @override | 1417   @override | 
| 2126   visitSuperFieldFieldPostfix( | 1418   visitSuperFieldFieldPostfix(Send node, FieldElement readField, | 
| 2127       Send node, | 1419       FieldElement writtenField, IncDecOperator operator, arg) { | 
| 2128       FieldElement readField, |  | 
| 2129       FieldElement writtenField, |  | 
| 2130       IncDecOperator operator, |  | 
| 2131       arg) { |  | 
| 2132     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_POSTFIX, | 1420     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_POSTFIX, | 
| 2133         getter: readField, setter: writtenField, operator: operator)); | 1421         getter: readField, setter: writtenField, operator: operator)); | 
| 2134   } | 1422   } | 
| 2135 | 1423 | 
| 2136   @override | 1424   @override | 
| 2137   visitSuperFieldPostfix( | 1425   visitSuperFieldPostfix( | 
| 2138       Send node, | 1426       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 2139       FieldElement field, |  | 
| 2140       IncDecOperator operator, |  | 
| 2141       arg) { |  | 
| 2142     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_POSTFIX, | 1427     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_POSTFIX, | 
| 2143         element: field, operator: operator)); | 1428         element: field, operator: operator)); | 
| 2144   } | 1429   } | 
| 2145 | 1430 | 
| 2146   @override | 1431   @override | 
| 2147   visitFinalSuperFieldPostfix( | 1432   visitFinalSuperFieldPostfix( | 
| 2148       Send node, | 1433       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 2149       FieldElement field, |  | 
| 2150       IncDecOperator operator, |  | 
| 2151       arg) { |  | 
| 2152     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_POSTFIX, | 1434     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_POSTFIX, | 
| 2153         element: field, operator: operator)); | 1435         element: field, operator: operator)); | 
| 2154   } | 1436   } | 
| 2155 | 1437 | 
| 2156   @override | 1438   @override | 
| 2157   visitSuperFieldSetterPostfix( | 1439   visitSuperFieldSetterPostfix(Send node, FieldElement field, | 
| 2158       Send node, | 1440       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2159       FieldElement field, |  | 
| 2160       FunctionElement setter, |  | 
| 2161       IncDecOperator operator, |  | 
| 2162       arg) { |  | 
| 2163     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_POSTFIX, | 1441     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_POSTFIX, | 
| 2164         getter: field, setter: setter, operator: operator)); | 1442         getter: field, setter: setter, operator: operator)); | 
| 2165   } | 1443   } | 
| 2166 | 1444 | 
| 2167   @override | 1445   @override | 
| 2168   visitSuperGetterFieldPostfix( | 1446   visitSuperGetterFieldPostfix(Send node, FunctionElement getter, | 
| 2169       Send node, | 1447       FieldElement field, IncDecOperator operator, arg) { | 
| 2170       FunctionElement getter, |  | 
| 2171       FieldElement field, |  | 
| 2172       IncDecOperator operator, |  | 
| 2173       arg) { |  | 
| 2174     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_POSTFIX, | 1448     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_POSTFIX, | 
| 2175         getter: getter, setter: field, operator: operator)); | 1449         getter: getter, setter: field, operator: operator)); | 
| 2176   } | 1450   } | 
| 2177 | 1451 | 
| 2178   @override | 1452   @override | 
| 2179   visitSuperGetterSetterPostfix( | 1453   visitSuperGetterSetterPostfix(Send node, FunctionElement getter, | 
| 2180       Send node, | 1454       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2181       FunctionElement getter, |  | 
| 2182       FunctionElement setter, |  | 
| 2183       IncDecOperator operator, |  | 
| 2184       arg) { |  | 
| 2185     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_POSTFIX, | 1455     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_POSTFIX, | 
| 2186         getter: getter, setter: setter, operator: operator)); | 1456         getter: getter, setter: setter, operator: operator)); | 
| 2187   } | 1457   } | 
| 2188 | 1458 | 
| 2189   @override | 1459   @override | 
| 2190   visitSuperMethodSetterPostfix( | 1460   visitSuperMethodSetterPostfix(Send node, FunctionElement method, | 
| 2191       Send node, | 1461       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2192       FunctionElement method, |  | 
| 2193       FunctionElement setter, |  | 
| 2194       IncDecOperator operator, |  | 
| 2195       arg) { |  | 
| 2196     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_POSTFIX, | 1462     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_POSTFIX, | 
| 2197         getter: method, setter: setter, operator: operator)); | 1463         getter: method, setter: setter, operator: operator)); | 
| 2198   } | 1464   } | 
| 2199 | 1465 | 
| 2200   @override | 1466   @override | 
| 2201   visitThisPropertyPostfix( | 1467   visitThisPropertyPostfix(Send node, Name name, IncDecOperator operator, arg) { | 
| 2202       Send node, |  | 
| 2203       Name name, |  | 
| 2204       IncDecOperator operator, |  | 
| 2205       arg) { |  | 
| 2206     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_POSTFIX, | 1468     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_POSTFIX, | 
| 2207         name: name, operator: operator)); | 1469         name: name, operator: operator)); | 
| 2208     super.visitThisPropertyPostfix(node, name, operator, arg); | 1470     super.visitThisPropertyPostfix(node, name, operator, arg); | 
| 2209   } | 1471   } | 
| 2210 | 1472 | 
| 2211   @override | 1473   @override | 
| 2212   visitTopLevelFieldPostfix( | 1474   visitTopLevelFieldPostfix( | 
| 2213       Send node, | 1475       Send node, FieldElement field, IncDecOperator operator, arg) { | 
| 2214       FieldElement field, |  | 
| 2215       IncDecOperator operator, |  | 
| 2216       arg) { |  | 
| 2217     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_POSTFIX, | 1476     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_POSTFIX, | 
| 2218         element: field, operator: operator)); | 1477         element: field, operator: operator)); | 
| 2219   } | 1478   } | 
| 2220 | 1479 | 
| 2221   @override | 1480   @override | 
| 2222   visitTopLevelGetterSetterPostfix( | 1481   visitTopLevelGetterSetterPostfix(Send node, FunctionElement getter, | 
| 2223       Send node, | 1482       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2224       FunctionElement getter, |  | 
| 2225       FunctionElement setter, |  | 
| 2226       IncDecOperator operator, |  | 
| 2227       arg) { |  | 
| 2228     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_POSTFIX, | 1483     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_POSTFIX, | 
| 2229         getter: getter, setter: setter, operator: operator)); | 1484         getter: getter, setter: setter, operator: operator)); | 
| 2230   } | 1485   } | 
| 2231 | 1486 | 
| 2232   @override | 1487   @override | 
| 2233   visitTopLevelMethodSetterPostfix( | 1488   visitTopLevelMethodSetterPostfix(Send node, FunctionElement method, | 
| 2234       Send node, | 1489       FunctionElement setter, IncDecOperator operator, arg) { | 
| 2235       FunctionElement method, |  | 
| 2236       FunctionElement setter, |  | 
| 2237       IncDecOperator operator, |  | 
| 2238       arg) { |  | 
| 2239     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_POSTFIX, | 1490     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_POSTFIX, | 
| 2240         getter: method, setter: setter, operator: operator)); | 1491         getter: method, setter: setter, operator: operator)); | 
| 2241   } | 1492   } | 
| 2242 | 1493 | 
| 2243   @override | 1494   @override | 
| 2244   visitTypeVariableTypeLiteralPostfix( | 1495   visitTypeVariableTypeLiteralPostfix( | 
| 2245       Send node, | 1496       Send node, TypeVariableElement element, IncDecOperator operator, arg) { | 
| 2246       TypeVariableElement element, |  | 
| 2247       IncDecOperator operator, |  | 
| 2248       arg) { |  | 
| 2249     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_POSTFIX, | 1497     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_POSTFIX, | 
| 2250         element: element, operator: operator)); | 1498         element: element, operator: operator)); | 
| 2251   } | 1499   } | 
| 2252 | 1500 | 
| 2253   @override | 1501   @override | 
| 2254   visitTypedefTypeLiteralPostfix( | 1502   visitTypedefTypeLiteralPostfix( | 
| 2255       Send node, | 1503       Send node, ConstantExpression constant, IncDecOperator operator, arg) { | 
| 2256       ConstantExpression constant, |  | 
| 2257       IncDecOperator operator, |  | 
| 2258       arg) { |  | 
| 2259     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_POSTFIX, | 1504     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_POSTFIX, | 
| 2260         constant: constant.toDartText(), operator: operator)); | 1505         constant: constant.toDartText(), operator: operator)); | 
| 2261   } | 1506   } | 
| 2262 | 1507 | 
| 2263   @override | 1508   @override | 
| 2264   visitUnresolvedCompound( | 1509   visitUnresolvedCompound(Send node, ErroneousElement element, | 
| 2265       Send node, | 1510       AssignmentOperator operator, Node rhs, arg) { | 
| 2266       ErroneousElement element, |  | 
| 2267       AssignmentOperator operator, |  | 
| 2268       Node rhs, |  | 
| 2269       arg) { |  | 
| 2270     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_COMPOUND, | 1511     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_COMPOUND, | 
| 2271         operator: operator, rhs: rhs)); | 1512         operator: operator, rhs: rhs)); | 
| 2272     apply(rhs, arg); | 1513     apply(rhs, arg); | 
| 2273   } | 1514   } | 
| 2274 | 1515 | 
| 2275   @override | 1516   @override | 
| 2276   visitUnresolvedGet( | 1517   visitUnresolvedGet(Send node, Element element, arg) { | 
| 2277       Send node, |  | 
| 2278       Element element, |  | 
| 2279       arg) { |  | 
| 2280     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_GET, name: element.name)); | 1518     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_GET, name: element.name)); | 
| 2281   } | 1519   } | 
| 2282 | 1520 | 
| 2283   @override | 1521   @override | 
| 2284   visitUnresolvedSet( | 1522   visitUnresolvedSet(Send node, Element element, Node rhs, arg) { | 
| 2285       Send node, |  | 
| 2286       Element element, |  | 
| 2287       Node rhs, |  | 
| 2288       arg) { |  | 
| 2289     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SET, | 1523     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SET, | 
| 2290                          name: element.name, rhs: rhs)); | 1524         name: element.name, rhs: rhs)); | 
| 2291     super.visitUnresolvedSet(node, element, rhs, arg); | 1525     super.visitUnresolvedSet(node, element, rhs, arg); | 
| 2292   } | 1526   } | 
| 2293 | 1527 | 
| 2294   @override | 1528   @override | 
| 2295   visitUnresolvedInvoke( | 1529   visitUnresolvedInvoke( | 
| 2296       Send node, | 1530       Send node, Element element, NodeList arguments, Selector selector, arg) { | 
| 2297       Element element, |  | 
| 2298       NodeList arguments, |  | 
| 2299       Selector selector, |  | 
| 2300       arg) { |  | 
| 2301     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_INVOKE, | 1531     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_INVOKE, | 
| 2302                          name: element.name, arguments: arguments)); | 1532         name: element.name, arguments: arguments)); | 
| 2303     super.visitUnresolvedInvoke(node, element, arguments, selector, arg); | 1533     super.visitUnresolvedInvoke(node, element, arguments, selector, arg); | 
| 2304   } | 1534   } | 
| 2305 | 1535 | 
| 2306   @override | 1536   @override | 
| 2307   visitUnresolvedPostfix( | 1537   visitUnresolvedPostfix( | 
| 2308       Send node, | 1538       Send node, ErroneousElement element, IncDecOperator operator, arg) { | 
| 2309       ErroneousElement element, | 1539     visits | 
| 2310       IncDecOperator operator, | 1540         .add(new Visit(VisitKind.VISIT_UNRESOLVED_POSTFIX, operator: operator)); | 
| 2311       arg) { |  | 
| 2312     visits.add(new Visit( |  | 
| 2313         VisitKind.VISIT_UNRESOLVED_POSTFIX, operator: operator)); |  | 
| 2314   } | 1541   } | 
| 2315 | 1542 | 
| 2316   @override | 1543   @override | 
| 2317   visitUnresolvedPrefix( | 1544   visitUnresolvedPrefix( | 
| 2318       Send node, | 1545       Send node, ErroneousElement element, IncDecOperator operator, arg) { | 
| 2319       ErroneousElement element, | 1546     visits | 
| 2320       IncDecOperator operator, | 1547         .add(new Visit(VisitKind.VISIT_UNRESOLVED_PREFIX, operator: operator)); | 
| 2321       arg) { |  | 
| 2322     visits.add(new Visit( |  | 
| 2323         VisitKind.VISIT_UNRESOLVED_PREFIX, operator: operator)); |  | 
| 2324   } | 1548   } | 
| 2325 | 1549 | 
| 2326   @override | 1550   @override | 
| 2327   visitUnresolvedSuperCompoundIndexSet( | 1551   visitUnresolvedSuperCompoundIndexSet(Send node, Element element, Node index, | 
| 2328       Send node, | 1552       AssignmentOperator operator, Node rhs, arg) { | 
| 2329       Element element, | 1553     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_COMPOUND_INDEX_SET, | 
| 2330       Node index, |  | 
| 2331       AssignmentOperator operator, |  | 
| 2332       Node rhs, |  | 
| 2333       arg) { |  | 
| 2334     visits.add(new Visit( |  | 
| 2335         VisitKind.VISIT_UNRESOLVED_SUPER_COMPOUND_INDEX_SET, |  | 
| 2336         index: index, operator: operator, rhs: rhs)); | 1554         index: index, operator: operator, rhs: rhs)); | 
| 2337     apply(index, arg); | 1555     apply(index, arg); | 
| 2338     apply(rhs, arg); | 1556     apply(rhs, arg); | 
| 2339   } | 1557   } | 
| 2340 | 1558 | 
| 2341   @override | 1559   @override | 
| 2342   visitUnresolvedSuperGetterCompoundIndexSet( | 1560   visitUnresolvedSuperGetterCompoundIndexSet( | 
| 2343       Send node, | 1561       Send node, | 
| 2344       Element element, | 1562       Element element, | 
| 2345       MethodElement setter, | 1563       MethodElement setter, | 
| 2346       Node index, | 1564       Node index, | 
| 2347       AssignmentOperator operator, | 1565       AssignmentOperator operator, | 
| 2348       Node rhs, | 1566       Node rhs, | 
| 2349       arg) { | 1567       arg) { | 
| 2350     visits.add(new Visit( | 1568     visits.add(new Visit( | 
| 2351         VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_COMPOUND_INDEX_SET, | 1569         VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_COMPOUND_INDEX_SET, | 
| 2352         setter: setter, index: index, operator: operator, rhs: rhs)); | 1570         setter: setter, | 
|  | 1571         index: index, | 
|  | 1572         operator: operator, | 
|  | 1573         rhs: rhs)); | 
| 2353     apply(index, arg); | 1574     apply(index, arg); | 
| 2354     apply(rhs, arg); | 1575     apply(rhs, arg); | 
| 2355   } | 1576   } | 
| 2356 | 1577 | 
| 2357   @override | 1578   @override | 
| 2358   visitUnresolvedSuperSetterCompoundIndexSet( | 1579   visitUnresolvedSuperSetterCompoundIndexSet(Send node, MethodElement getter, | 
| 2359       Send node, | 1580       Element element, Node index, AssignmentOperator operator, Node rhs, arg) { | 
| 2360       MethodElement getter, |  | 
| 2361       Element element, |  | 
| 2362       Node index, |  | 
| 2363       AssignmentOperator operator, |  | 
| 2364       Node rhs, |  | 
| 2365       arg) { |  | 
| 2366     visits.add(new Visit( | 1581     visits.add(new Visit( | 
| 2367         VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_COMPOUND_INDEX_SET, | 1582         VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_COMPOUND_INDEX_SET, | 
| 2368         getter: getter, index: index, operator: operator, rhs: rhs)); | 1583         getter: getter, | 
|  | 1584         index: index, | 
|  | 1585         operator: operator, | 
|  | 1586         rhs: rhs)); | 
| 2369     apply(index, arg); | 1587     apply(index, arg); | 
| 2370     apply(rhs, arg); | 1588     apply(rhs, arg); | 
| 2371   } | 1589   } | 
| 2372 | 1590 | 
| 2373   @override | 1591   @override | 
| 2374   visitUnresolvedSuperIndexSet( | 1592   visitUnresolvedSuperIndexSet( | 
| 2375       Send node, | 1593       Send node, ErroneousElement element, Node index, Node rhs, arg) { | 
| 2376       ErroneousElement element, |  | 
| 2377       Node index, |  | 
| 2378       Node rhs, |  | 
| 2379       arg) { |  | 
| 2380     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_SET, | 1594     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_SET, | 
| 2381                index: index, rhs: rhs)); | 1595         index: index, rhs: rhs)); | 
| 2382     apply(index, arg); | 1596     apply(index, arg); | 
| 2383     apply(rhs, arg); | 1597     apply(rhs, arg); | 
| 2384   } | 1598   } | 
| 2385 | 1599 | 
| 2386   @override | 1600   @override | 
| 2387   visitUnresolvedSuperIndexPostfix( | 1601   visitUnresolvedSuperIndexPostfix( | 
| 2388       Send node, | 1602       Send node, Element element, Node index, IncDecOperator operator, arg) { | 
| 2389       Element element, |  | 
| 2390       Node index, |  | 
| 2391       IncDecOperator operator, |  | 
| 2392       arg) { |  | 
| 2393     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_POSTFIX, | 1603     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_POSTFIX, | 
| 2394                index: index, operator: operator)); | 1604         index: index, operator: operator)); | 
| 2395     apply(index, arg); | 1605     apply(index, arg); | 
| 2396   } | 1606   } | 
| 2397 | 1607 | 
| 2398   @override | 1608   @override | 
| 2399   visitUnresolvedSuperGetterIndexPostfix( | 1609   visitUnresolvedSuperGetterIndexPostfix(Send node, Element element, | 
| 2400       Send node, | 1610       MethodElement setter, Node index, IncDecOperator operator, arg) { | 
| 2401       Element element, |  | 
| 2402       MethodElement setter, |  | 
| 2403       Node index, |  | 
| 2404       IncDecOperator operator, |  | 
| 2405       arg) { |  | 
| 2406     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_POSTFIX, | 1611     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_POSTFIX, | 
| 2407                setter: setter, index: index, operator: operator)); | 1612         setter: setter, index: index, operator: operator)); | 
| 2408     apply(index, arg); | 1613     apply(index, arg); | 
| 2409   } | 1614   } | 
| 2410 | 1615 | 
| 2411   @override | 1616   @override | 
| 2412   visitUnresolvedSuperSetterIndexPostfix( | 1617   visitUnresolvedSuperSetterIndexPostfix(Send node, MethodElement getter, | 
| 2413       Send node, | 1618       Element element, Node index, IncDecOperator operator, arg) { | 
| 2414       MethodElement getter, |  | 
| 2415       Element element, |  | 
| 2416       Node index, |  | 
| 2417       IncDecOperator operator, |  | 
| 2418       arg) { |  | 
| 2419     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_POSTFIX, | 1619     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_POSTFIX, | 
| 2420                getter: getter, index: index, operator: operator)); | 1620         getter: getter, index: index, operator: operator)); | 
| 2421     apply(index, arg); | 1621     apply(index, arg); | 
| 2422   } | 1622   } | 
| 2423 | 1623 | 
| 2424   @override | 1624   @override | 
| 2425   visitUnresolvedSuperIndexPrefix( | 1625   visitUnresolvedSuperIndexPrefix( | 
| 2426       Send node, | 1626       Send node, Element element, Node index, IncDecOperator operator, arg) { | 
| 2427       Element element, |  | 
| 2428       Node index, |  | 
| 2429       IncDecOperator operator, |  | 
| 2430       arg) { |  | 
| 2431     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_PREFIX, | 1627     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_PREFIX, | 
| 2432                index: index, operator: operator)); | 1628         index: index, operator: operator)); | 
| 2433     apply(index, arg); | 1629     apply(index, arg); | 
| 2434   } | 1630   } | 
| 2435 | 1631 | 
| 2436   @override | 1632   @override | 
| 2437   visitUnresolvedSuperGetterIndexPrefix( | 1633   visitUnresolvedSuperGetterIndexPrefix(Send node, Element element, | 
| 2438       Send node, | 1634       MethodElement setter, Node index, IncDecOperator operator, arg) { | 
| 2439       Element element, |  | 
| 2440       MethodElement setter, |  | 
| 2441       Node index, |  | 
| 2442       IncDecOperator operator, |  | 
| 2443       arg) { |  | 
| 2444     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_PREFIX, | 1635     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_PREFIX, | 
| 2445                setter: setter, index: index, operator: operator)); | 1636         setter: setter, index: index, operator: operator)); | 
| 2446     apply(index, arg); | 1637     apply(index, arg); | 
| 2447   } | 1638   } | 
| 2448 | 1639 | 
| 2449   @override | 1640   @override | 
| 2450   visitUnresolvedSuperSetterIndexPrefix( | 1641   visitUnresolvedSuperSetterIndexPrefix(Send node, MethodElement getter, | 
| 2451       Send node, | 1642       Element element, Node index, IncDecOperator operator, arg) { | 
| 2452       MethodElement getter, |  | 
| 2453       Element element, |  | 
| 2454       Node index, |  | 
| 2455       IncDecOperator operator, |  | 
| 2456       arg) { |  | 
| 2457     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_PREFIX, | 1643     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_PREFIX, | 
| 2458                getter: getter, index: index, operator: operator)); | 1644         getter: getter, index: index, operator: operator)); | 
| 2459     apply(index, arg); | 1645     apply(index, arg); | 
| 2460   } | 1646   } | 
| 2461 | 1647 | 
| 2462   @override | 1648   @override | 
| 2463   visitIndexPostfix( | 1649   visitIndexPostfix( | 
| 2464       Send node, | 1650       Send node, Node receiver, Node index, IncDecOperator operator, arg) { | 
| 2465       Node receiver, |  | 
| 2466       Node index, |  | 
| 2467       IncDecOperator operator, |  | 
| 2468       arg) { |  | 
| 2469     visits.add(new Visit(VisitKind.VISIT_INDEX_POSTFIX, | 1651     visits.add(new Visit(VisitKind.VISIT_INDEX_POSTFIX, | 
| 2470         receiver: receiver, index: index, operator: operator)); | 1652         receiver: receiver, index: index, operator: operator)); | 
| 2471     apply(receiver, arg); | 1653     apply(receiver, arg); | 
| 2472     apply(index, arg); | 1654     apply(index, arg); | 
| 2473   } | 1655   } | 
| 2474 | 1656 | 
| 2475   @override | 1657   @override | 
| 2476   visitIndexPrefix( | 1658   visitIndexPrefix( | 
| 2477       Send node, | 1659       Send node, Node receiver, Node index, IncDecOperator operator, arg) { | 
| 2478       Node receiver, |  | 
| 2479       Node index, |  | 
| 2480       IncDecOperator operator, |  | 
| 2481       arg) { |  | 
| 2482     visits.add(new Visit(VisitKind.VISIT_INDEX_PREFIX, | 1660     visits.add(new Visit(VisitKind.VISIT_INDEX_PREFIX, | 
| 2483         receiver: receiver, index: index, operator: operator)); | 1661         receiver: receiver, index: index, operator: operator)); | 
| 2484     apply(receiver, arg); | 1662     apply(receiver, arg); | 
| 2485     apply(index, arg); | 1663     apply(index, arg); | 
| 2486   } | 1664   } | 
| 2487 | 1665 | 
| 2488   @override | 1666   @override | 
| 2489   visitSuperIndexPostfix( | 1667   visitSuperIndexPostfix( | 
| 2490       Send node, | 1668       Send node, | 
| 2491       FunctionElement indexFunction, | 1669       FunctionElement indexFunction, | 
| 2492       FunctionElement indexSetFunction, | 1670       FunctionElement indexSetFunction, | 
| 2493       Node index, | 1671       Node index, | 
| 2494       IncDecOperator operator, | 1672       IncDecOperator operator, | 
| 2495       arg) { | 1673       arg) { | 
| 2496     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_POSTFIX, | 1674     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_POSTFIX, | 
| 2497         getter: indexFunction, setter: indexSetFunction, | 1675         getter: indexFunction, | 
| 2498         index: index, operator: operator)); | 1676         setter: indexSetFunction, | 
|  | 1677         index: index, | 
|  | 1678         operator: operator)); | 
| 2499     apply(index, arg); | 1679     apply(index, arg); | 
| 2500   } | 1680   } | 
| 2501 | 1681 | 
| 2502   @override | 1682   @override | 
| 2503   visitSuperIndexPrefix( | 1683   visitSuperIndexPrefix( | 
| 2504       Send node, | 1684       Send node, | 
| 2505       FunctionElement indexFunction, | 1685       FunctionElement indexFunction, | 
| 2506       FunctionElement indexSetFunction, | 1686       FunctionElement indexSetFunction, | 
| 2507       Node index, | 1687       Node index, | 
| 2508       IncDecOperator operator, | 1688       IncDecOperator operator, | 
| 2509       arg) { | 1689       arg) { | 
| 2510     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_PREFIX, | 1690     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_PREFIX, | 
| 2511         getter: indexFunction, setter: indexSetFunction, | 1691         getter: indexFunction, | 
| 2512         index: index, operator: operator)); | 1692         setter: indexSetFunction, | 
|  | 1693         index: index, | 
|  | 1694         operator: operator)); | 
| 2513     apply(index, arg); | 1695     apply(index, arg); | 
| 2514   } | 1696   } | 
| 2515 | 1697 | 
| 2516   @override | 1698   @override | 
| 2517   visitUnresolvedClassConstructorInvoke( | 1699   visitUnresolvedClassConstructorInvoke(NewExpression node, Element constructor, | 
| 2518       NewExpression node, | 1700       DartType type, NodeList arguments, Selector selector, arg) { | 
| 2519       Element constructor, |  | 
| 2520       DartType type, |  | 
| 2521       NodeList arguments, |  | 
| 2522       Selector selector, |  | 
| 2523       arg) { |  | 
| 2524     // TODO(johnniwinther): Test [type] when it is not `dynamic`. | 1701     // TODO(johnniwinther): Test [type] when it is not `dynamic`. | 
| 2525     visits.add(new Visit( | 1702     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_CLASS_CONSTRUCTOR_INVOKE, | 
| 2526         VisitKind.VISIT_UNRESOLVED_CLASS_CONSTRUCTOR_INVOKE, |  | 
| 2527         arguments: arguments)); | 1703         arguments: arguments)); | 
| 2528     apply(arguments, arg); | 1704     apply(arguments, arg); | 
| 2529   } | 1705   } | 
| 2530 | 1706 | 
| 2531   @override | 1707   @override | 
| 2532   visitUnresolvedConstructorInvoke( | 1708   visitUnresolvedConstructorInvoke(NewExpression node, Element constructor, | 
| 2533       NewExpression node, | 1709       DartType type, NodeList arguments, Selector selector, arg) { | 
| 2534       Element constructor, |  | 
| 2535       DartType type, |  | 
| 2536       NodeList arguments, |  | 
| 2537       Selector selector, |  | 
| 2538       arg) { |  | 
| 2539     // TODO(johnniwinther): Test [type] when it is not `dynamic`. | 1710     // TODO(johnniwinther): Test [type] when it is not `dynamic`. | 
| 2540     visits.add(new Visit( | 1711     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_CONSTRUCTOR_INVOKE, | 
| 2541         VisitKind.VISIT_UNRESOLVED_CONSTRUCTOR_INVOKE, |  | 
| 2542         arguments: arguments)); | 1712         arguments: arguments)); | 
| 2543     apply(arguments, arg); | 1713     apply(arguments, arg); | 
| 2544   } | 1714   } | 
| 2545 | 1715 | 
| 2546   @override | 1716   @override | 
| 2547   visitConstConstructorInvoke( | 1717   visitConstConstructorInvoke( | 
| 2548       NewExpression node, | 1718       NewExpression node, ConstructedConstantExpression constant, arg) { | 
| 2549       ConstructedConstantExpression constant, |  | 
| 2550       arg) { |  | 
| 2551     visits.add(new Visit(VisitKind.VISIT_CONST_CONSTRUCTOR_INVOKE, | 1719     visits.add(new Visit(VisitKind.VISIT_CONST_CONSTRUCTOR_INVOKE, | 
| 2552                          constant: constant.toDartText())); | 1720         constant: constant.toDartText())); | 
| 2553     super.visitConstConstructorInvoke(node, constant, arg); | 1721     super.visitConstConstructorInvoke(node, constant, arg); | 
| 2554   } | 1722   } | 
| 2555 | 1723 | 
| 2556   @override | 1724   @override | 
| 2557   visitBoolFromEnvironmentConstructorInvoke( | 1725   visitBoolFromEnvironmentConstructorInvoke( | 
| 2558       NewExpression node, | 1726       NewExpression node, BoolFromEnvironmentConstantExpression constant, arg) { | 
| 2559       BoolFromEnvironmentConstantExpression constant, |  | 
| 2560       arg) { |  | 
| 2561     visits.add(new Visit( | 1727     visits.add(new Visit( | 
| 2562         VisitKind.VISIT_BOOL_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 1728         VisitKind.VISIT_BOOL_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 
| 2563         constant: constant.toDartText())); | 1729         constant: constant.toDartText())); | 
| 2564     super.visitBoolFromEnvironmentConstructorInvoke(node, constant, arg); | 1730     super.visitBoolFromEnvironmentConstructorInvoke(node, constant, arg); | 
| 2565   } | 1731   } | 
| 2566 | 1732 | 
| 2567   @override | 1733   @override | 
| 2568   visitIntFromEnvironmentConstructorInvoke( | 1734   visitIntFromEnvironmentConstructorInvoke( | 
| 2569       NewExpression node, | 1735       NewExpression node, IntFromEnvironmentConstantExpression constant, arg) { | 
| 2570       IntFromEnvironmentConstantExpression constant, |  | 
| 2571       arg) { |  | 
| 2572     visits.add(new Visit( | 1736     visits.add(new Visit( | 
| 2573         VisitKind.VISIT_INT_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 1737         VisitKind.VISIT_INT_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 
| 2574         constant: constant.toDartText())); | 1738         constant: constant.toDartText())); | 
| 2575     super.visitIntFromEnvironmentConstructorInvoke(node, constant, arg); | 1739     super.visitIntFromEnvironmentConstructorInvoke(node, constant, arg); | 
| 2576   } | 1740   } | 
| 2577 | 1741 | 
| 2578   @override | 1742   @override | 
| 2579   visitStringFromEnvironmentConstructorInvoke( | 1743   visitStringFromEnvironmentConstructorInvoke(NewExpression node, | 
| 2580       NewExpression node, | 1744       StringFromEnvironmentConstantExpression constant, arg) { | 
| 2581       StringFromEnvironmentConstantExpression constant, |  | 
| 2582       arg) { |  | 
| 2583     visits.add(new Visit( | 1745     visits.add(new Visit( | 
| 2584         VisitKind.VISIT_STRING_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 1746         VisitKind.VISIT_STRING_FROM_ENVIRONMENT_CONSTRUCTOR_INVOKE, | 
| 2585         constant: constant.toDartText())); | 1747         constant: constant.toDartText())); | 
| 2586     super.visitStringFromEnvironmentConstructorInvoke(node, constant, arg); | 1748     super.visitStringFromEnvironmentConstructorInvoke(node, constant, arg); | 
| 2587   } | 1749   } | 
| 2588 | 1750 | 
| 2589   @override | 1751   @override | 
| 2590   errorNonConstantConstructorInvoke( | 1752   errorNonConstantConstructorInvoke(NewExpression node, Element element, | 
| 2591         NewExpression node, | 1753       DartType type, NodeList arguments, CallStructure callStructure, arg) { | 
| 2592         Element element, |  | 
| 2593         DartType type, |  | 
| 2594         NodeList arguments, |  | 
| 2595         CallStructure callStructure, |  | 
| 2596         arg) { |  | 
| 2597     visits.add(new Visit(VisitKind.ERROR_NON_CONSTANT_CONSTRUCTOR_INVOKE, | 1754     visits.add(new Visit(VisitKind.ERROR_NON_CONSTANT_CONSTRUCTOR_INVOKE, | 
| 2598         element: element, type: type, | 1755         element: element, | 
| 2599         arguments: arguments, selector: callStructure)); | 1756         type: type, | 
|  | 1757         arguments: arguments, | 
|  | 1758         selector: callStructure)); | 
| 2600     super.errorNonConstantConstructorInvoke( | 1759     super.errorNonConstantConstructorInvoke( | 
| 2601         node, element, type, arguments, callStructure, arg); | 1760         node, element, type, arguments, callStructure, arg); | 
| 2602   } | 1761   } | 
| 2603 | 1762 | 
| 2604   @override | 1763   @override | 
| 2605   visitConstructorIncompatibleInvoke( | 1764   visitConstructorIncompatibleInvoke( | 
| 2606         NewExpression node, | 1765       NewExpression node, | 
| 2607         ConstructorElement constructor, | 1766       ConstructorElement constructor, | 
| 2608         InterfaceType type, | 1767       InterfaceType type, | 
| 2609         NodeList arguments, | 1768       NodeList arguments, | 
| 2610         CallStructure callStructure, | 1769       CallStructure callStructure, | 
| 2611         arg) { | 1770       arg) { | 
| 2612     visits.add(new Visit(VisitKind.VISIT_CONSTRUCTOR_INCOMPATIBLE_INVOKE, | 1771     visits.add(new Visit(VisitKind.VISIT_CONSTRUCTOR_INCOMPATIBLE_INVOKE, | 
| 2613         element: constructor, type: type, | 1772         element: constructor, | 
| 2614         arguments: arguments, selector: callStructure)); | 1773         type: type, | 
|  | 1774         arguments: arguments, | 
|  | 1775         selector: callStructure)); | 
| 2615     super.visitConstructorIncompatibleInvoke( | 1776     super.visitConstructorIncompatibleInvoke( | 
| 2616         node, constructor, type, arguments, callStructure, arg); | 1777         node, constructor, type, arguments, callStructure, arg); | 
| 2617   } | 1778   } | 
| 2618 | 1779 | 
| 2619   @override | 1780   @override | 
| 2620   visitFactoryConstructorInvoke( | 1781   visitFactoryConstructorInvoke( | 
| 2621       NewExpression node, | 1782       NewExpression node, | 
| 2622       ConstructorElement constructor, | 1783       ConstructorElement constructor, | 
| 2623       InterfaceType type, | 1784       InterfaceType type, | 
| 2624       NodeList arguments, | 1785       NodeList arguments, | 
| 2625       CallStructure callStructure, | 1786       CallStructure callStructure, | 
| 2626       arg) { | 1787       arg) { | 
| 2627     visits.add(new Visit( | 1788     visits.add(new Visit(VisitKind.VISIT_FACTORY_CONSTRUCTOR_INVOKE, | 
| 2628         VisitKind.VISIT_FACTORY_CONSTRUCTOR_INVOKE, |  | 
| 2629         element: constructor, | 1789         element: constructor, | 
| 2630         type: type, | 1790         type: type, | 
| 2631         arguments: arguments, | 1791         arguments: arguments, | 
| 2632         selector: callStructure)); | 1792         selector: callStructure)); | 
| 2633     apply(arguments, arg); | 1793     apply(arguments, arg); | 
| 2634   } | 1794   } | 
| 2635 | 1795 | 
| 2636   @override | 1796   @override | 
| 2637   visitGenerativeConstructorInvoke( | 1797   visitGenerativeConstructorInvoke( | 
| 2638       NewExpression node, | 1798       NewExpression node, | 
| 2639       ConstructorElement constructor, | 1799       ConstructorElement constructor, | 
| 2640       InterfaceType type, | 1800       InterfaceType type, | 
| 2641       NodeList arguments, | 1801       NodeList arguments, | 
| 2642       CallStructure callStructure, | 1802       CallStructure callStructure, | 
| 2643       arg) { | 1803       arg) { | 
| 2644     visits.add(new Visit( | 1804     visits.add(new Visit(VisitKind.VISIT_GENERATIVE_CONSTRUCTOR_INVOKE, | 
| 2645         VisitKind.VISIT_GENERATIVE_CONSTRUCTOR_INVOKE, |  | 
| 2646         element: constructor, | 1805         element: constructor, | 
| 2647         type: type, | 1806         type: type, | 
| 2648         arguments: arguments, | 1807         arguments: arguments, | 
| 2649         selector: callStructure)); | 1808         selector: callStructure)); | 
| 2650     apply(arguments, arg); | 1809     apply(arguments, arg); | 
| 2651   } | 1810   } | 
| 2652 | 1811 | 
| 2653   @override | 1812   @override | 
| 2654   visitRedirectingFactoryConstructorInvoke( | 1813   visitRedirectingFactoryConstructorInvoke( | 
| 2655       NewExpression node, | 1814       NewExpression node, | 
| 2656       ConstructorElement constructor, | 1815       ConstructorElement constructor, | 
| 2657       InterfaceType type, | 1816       InterfaceType type, | 
| 2658       ConstructorElement effectiveTarget, | 1817       ConstructorElement effectiveTarget, | 
| 2659       InterfaceType effectiveTargetType, | 1818       InterfaceType effectiveTargetType, | 
| 2660       NodeList arguments, | 1819       NodeList arguments, | 
| 2661       CallStructure callStructure, | 1820       CallStructure callStructure, | 
| 2662       arg) { | 1821       arg) { | 
| 2663     visits.add(new Visit( | 1822     visits.add(new Visit(VisitKind.VISIT_REDIRECTING_FACTORY_CONSTRUCTOR_INVOKE, | 
| 2664         VisitKind.VISIT_REDIRECTING_FACTORY_CONSTRUCTOR_INVOKE, |  | 
| 2665         element: constructor, | 1823         element: constructor, | 
| 2666         type: type, | 1824         type: type, | 
| 2667         target: effectiveTarget, | 1825         target: effectiveTarget, | 
| 2668         targetType: effectiveTargetType, | 1826         targetType: effectiveTargetType, | 
| 2669         arguments: arguments, | 1827         arguments: arguments, | 
| 2670         selector: callStructure)); | 1828         selector: callStructure)); | 
| 2671     apply(arguments, arg); | 1829     apply(arguments, arg); | 
| 2672   } | 1830   } | 
| 2673 | 1831 | 
| 2674   @override | 1832   @override | 
| (...skipping 14 matching lines...) Expand all  Loading... | 
| 2689   } | 1847   } | 
| 2690 | 1848 | 
| 2691   @override | 1849   @override | 
| 2692   visitAbstractClassConstructorInvoke( | 1850   visitAbstractClassConstructorInvoke( | 
| 2693       NewExpression node, | 1851       NewExpression node, | 
| 2694       ConstructorElement constructor, | 1852       ConstructorElement constructor, | 
| 2695       InterfaceType type, | 1853       InterfaceType type, | 
| 2696       NodeList arguments, | 1854       NodeList arguments, | 
| 2697       CallStructure callStructure, | 1855       CallStructure callStructure, | 
| 2698       arg) { | 1856       arg) { | 
| 2699     visits.add(new Visit( | 1857     visits.add(new Visit(VisitKind.VISIT_ABSTRACT_CLASS_CONSTRUCTOR_INVOKE, | 
| 2700         VisitKind.VISIT_ABSTRACT_CLASS_CONSTRUCTOR_INVOKE, |  | 
| 2701         element: constructor, | 1858         element: constructor, | 
| 2702         type: type, | 1859         type: type, | 
| 2703         arguments: arguments, | 1860         arguments: arguments, | 
| 2704         selector: callStructure)); | 1861         selector: callStructure)); | 
| 2705     apply(arguments, arg); | 1862     apply(arguments, arg); | 
| 2706   } | 1863   } | 
| 2707 | 1864 | 
| 2708   @override | 1865   @override | 
| 2709   visitUnresolvedRedirectingFactoryConstructorInvoke( | 1866   visitUnresolvedRedirectingFactoryConstructorInvoke( | 
| 2710       NewExpression node, | 1867       NewExpression node, | 
| 2711       ConstructorElement constructor, | 1868       ConstructorElement constructor, | 
| 2712       InterfaceType type, | 1869       InterfaceType type, | 
| 2713       NodeList arguments, | 1870       NodeList arguments, | 
| 2714       CallStructure callStructure, | 1871       CallStructure callStructure, | 
| 2715       arg) { | 1872       arg) { | 
| 2716     visits.add(new Visit( | 1873     visits.add(new Visit( | 
| 2717         VisitKind.VISIT_UNRESOLVED_REDIRECTING_FACTORY_CONSTRUCTOR_INVOKE, | 1874         VisitKind.VISIT_UNRESOLVED_REDIRECTING_FACTORY_CONSTRUCTOR_INVOKE, | 
| 2718         element: constructor, | 1875         element: constructor, | 
| 2719         type: type, | 1876         type: type, | 
| 2720         arguments: arguments, | 1877         arguments: arguments, | 
| 2721         selector: callStructure)); | 1878         selector: callStructure)); | 
| 2722     apply(arguments, arg); | 1879     apply(arguments, arg); | 
| 2723   } | 1880   } | 
| 2724 | 1881 | 
| 2725   @override | 1882   @override | 
| 2726   visitUnresolvedStaticGetterCompound( | 1883   visitUnresolvedStaticGetterCompound(Send node, Element element, | 
| 2727       Send node, | 1884       MethodElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 2728       Element element, |  | 
| 2729       MethodElement setter, |  | 
| 2730       AssignmentOperator operator, |  | 
| 2731       Node rhs, |  | 
| 2732       arg) { |  | 
| 2733     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_COMPOUND, | 1885     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_COMPOUND, | 
| 2734         setter: setter, operator: operator, rhs: rhs)); | 1886         setter: setter, operator: operator, rhs: rhs)); | 
| 2735     apply(rhs, arg); | 1887     apply(rhs, arg); | 
| 2736   } | 1888   } | 
| 2737 | 1889 | 
| 2738   @override | 1890   @override | 
| 2739   visitUnresolvedTopLevelGetterCompound( | 1891   visitUnresolvedTopLevelGetterCompound(Send node, Element element, | 
| 2740       Send node, | 1892       MethodElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 2741       Element element, |  | 
| 2742       MethodElement setter, |  | 
| 2743       AssignmentOperator operator, |  | 
| 2744       Node rhs, |  | 
| 2745       arg) { |  | 
| 2746     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_COMPOUND, | 1893     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_COMPOUND, | 
| 2747         setter: setter, operator: operator, rhs: rhs)); | 1894         setter: setter, operator: operator, rhs: rhs)); | 
| 2748     apply(rhs, arg); | 1895     apply(rhs, arg); | 
| 2749   } | 1896   } | 
| 2750 | 1897 | 
| 2751   @override | 1898   @override | 
| 2752   visitUnresolvedStaticSetterCompound( | 1899   visitUnresolvedStaticSetterCompound(Send node, MethodElement getter, | 
| 2753       Send node, | 1900       Element element, AssignmentOperator operator, Node rhs, arg) { | 
| 2754       MethodElement getter, |  | 
| 2755       Element element, |  | 
| 2756       AssignmentOperator operator, |  | 
| 2757       Node rhs, |  | 
| 2758       arg) { |  | 
| 2759     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_COMPOUND, | 1901     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_COMPOUND, | 
| 2760         getter: getter, operator: operator, rhs: rhs)); | 1902         getter: getter, operator: operator, rhs: rhs)); | 
| 2761     apply(rhs, arg); | 1903     apply(rhs, arg); | 
| 2762   } | 1904   } | 
| 2763 | 1905 | 
| 2764   @override | 1906   @override | 
| 2765   visitUnresolvedTopLevelSetterCompound( | 1907   visitUnresolvedTopLevelSetterCompound(Send node, MethodElement getter, | 
| 2766       Send node, | 1908       Element element, AssignmentOperator operator, Node rhs, arg) { | 
| 2767       MethodElement getter, |  | 
| 2768       Element element, |  | 
| 2769       AssignmentOperator operator, |  | 
| 2770       Node rhs, |  | 
| 2771       arg) { |  | 
| 2772     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_COMPOUND, | 1909     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_COMPOUND, | 
| 2773         getter: getter, operator: operator, rhs: rhs)); | 1910         getter: getter, operator: operator, rhs: rhs)); | 
| 2774     apply(rhs, arg); | 1911     apply(rhs, arg); | 
| 2775   } | 1912   } | 
| 2776 | 1913 | 
| 2777   @override | 1914   @override | 
| 2778   visitStaticMethodCompound( | 1915   visitStaticMethodCompound(Send node, MethodElement method, | 
| 2779       Send node, | 1916       AssignmentOperator operator, Node rhs, arg) { | 
| 2780       MethodElement method, |  | 
| 2781       AssignmentOperator operator, |  | 
| 2782       Node rhs, |  | 
| 2783       arg) { |  | 
| 2784     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_COMPOUND, | 1917     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_COMPOUND, | 
| 2785         element: method, operator: operator, rhs: rhs)); | 1918         element: method, operator: operator, rhs: rhs)); | 
| 2786     apply(rhs, arg); | 1919     apply(rhs, arg); | 
| 2787   } | 1920   } | 
| 2788 | 1921 | 
| 2789   @override | 1922   @override | 
| 2790   visitTopLevelMethodCompound( | 1923   visitTopLevelMethodCompound(Send node, MethodElement method, | 
| 2791       Send node, | 1924       AssignmentOperator operator, Node rhs, arg) { | 
| 2792       MethodElement method, |  | 
| 2793       AssignmentOperator operator, |  | 
| 2794       Node rhs, |  | 
| 2795       arg) { |  | 
| 2796     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_COMPOUND, | 1925     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_COMPOUND, | 
| 2797         element: method, operator: operator, rhs: rhs)); | 1926         element: method, operator: operator, rhs: rhs)); | 
| 2798     apply(rhs, arg); | 1927     apply(rhs, arg); | 
| 2799   } | 1928   } | 
| 2800 | 1929 | 
| 2801   @override | 1930   @override | 
| 2802   visitUnresolvedStaticGetterPrefix( | 1931   visitUnresolvedStaticGetterPrefix(Send node, Element element, | 
| 2803       Send node, | 1932       MethodElement setter, IncDecOperator operator, arg) { | 
| 2804       Element element, |  | 
| 2805       MethodElement setter, |  | 
| 2806       IncDecOperator operator, |  | 
| 2807       arg) { |  | 
| 2808     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_PREFIX, | 1933     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_PREFIX, | 
| 2809         setter: setter, operator: operator)); | 1934         setter: setter, operator: operator)); | 
| 2810   } | 1935   } | 
| 2811 | 1936 | 
| 2812   @override | 1937   @override | 
| 2813   visitUnresolvedTopLevelGetterPrefix( | 1938   visitUnresolvedTopLevelGetterPrefix(Send node, Element element, | 
| 2814       Send node, | 1939       MethodElement setter, IncDecOperator operator, arg) { | 
| 2815       Element element, |  | 
| 2816       MethodElement setter, |  | 
| 2817       IncDecOperator operator, |  | 
| 2818       arg) { |  | 
| 2819     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_PREFIX, | 1940     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_PREFIX, | 
| 2820         setter: setter, operator: operator)); | 1941         setter: setter, operator: operator)); | 
| 2821   } | 1942   } | 
| 2822 | 1943 | 
| 2823   @override | 1944   @override | 
| 2824   visitUnresolvedStaticSetterPrefix( | 1945   visitUnresolvedStaticSetterPrefix(Send node, MethodElement getter, | 
| 2825       Send node, | 1946       Element element, IncDecOperator operator, arg) { | 
| 2826       MethodElement getter, |  | 
| 2827       Element element, |  | 
| 2828       IncDecOperator operator, |  | 
| 2829       arg) { |  | 
| 2830     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_PREFIX, | 1947     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_PREFIX, | 
| 2831         getter: getter, operator: operator)); | 1948         getter: getter, operator: operator)); | 
| 2832   } | 1949   } | 
| 2833 | 1950 | 
| 2834   @override | 1951   @override | 
| 2835   visitUnresolvedTopLevelSetterPrefix( | 1952   visitUnresolvedTopLevelSetterPrefix(Send node, MethodElement getter, | 
| 2836       Send node, | 1953       Element element, IncDecOperator operator, arg) { | 
| 2837       MethodElement getter, |  | 
| 2838       Element element, |  | 
| 2839       IncDecOperator operator, |  | 
| 2840       arg) { |  | 
| 2841     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_PREFIX, | 1954     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_PREFIX, | 
| 2842         getter: getter, operator: operator)); | 1955         getter: getter, operator: operator)); | 
| 2843   } | 1956   } | 
| 2844 | 1957 | 
| 2845   @override | 1958   @override | 
| 2846   visitStaticMethodPrefix( | 1959   visitStaticMethodPrefix( | 
| 2847       Send node, | 1960       Send node, MethodElement method, IncDecOperator operator, arg) { | 
| 2848       MethodElement method, |  | 
| 2849       IncDecOperator operator, |  | 
| 2850       arg) { |  | 
| 2851     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_PREFIX, | 1961     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_PREFIX, | 
| 2852         element: method, operator: operator)); | 1962         element: method, operator: operator)); | 
| 2853   } | 1963   } | 
| 2854 | 1964 | 
| 2855   @override | 1965   @override | 
| 2856   visitTopLevelMethodPrefix( | 1966   visitTopLevelMethodPrefix( | 
| 2857       Send node, | 1967       Send node, MethodElement method, IncDecOperator operator, arg) { | 
| 2858       MethodElement method, |  | 
| 2859       IncDecOperator operator, |  | 
| 2860       arg) { |  | 
| 2861     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_PREFIX, | 1968     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_PREFIX, | 
| 2862         element: method, operator: operator)); | 1969         element: method, operator: operator)); | 
| 2863   } | 1970   } | 
| 2864 | 1971 | 
| 2865   @override | 1972   @override | 
| 2866   visitUnresolvedStaticGetterPostfix( | 1973   visitUnresolvedStaticGetterPostfix(Send node, Element element, | 
| 2867       Send node, | 1974       MethodElement setter, IncDecOperator operator, arg) { | 
| 2868       Element element, |  | 
| 2869       MethodElement setter, |  | 
| 2870       IncDecOperator operator, |  | 
| 2871       arg) { |  | 
| 2872     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_POSTFIX, | 1975     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_POSTFIX, | 
| 2873         setter: setter, operator: operator)); | 1976         setter: setter, operator: operator)); | 
| 2874   } | 1977   } | 
| 2875 | 1978 | 
| 2876   @override | 1979   @override | 
| 2877   visitUnresolvedTopLevelGetterPostfix( | 1980   visitUnresolvedTopLevelGetterPostfix(Send node, Element element, | 
| 2878       Send node, | 1981       MethodElement setter, IncDecOperator operator, arg) { | 
| 2879       Element element, |  | 
| 2880       MethodElement setter, |  | 
| 2881       IncDecOperator operator, |  | 
| 2882       arg) { |  | 
| 2883     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_POSTFIX, | 1982     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_POSTFIX, | 
| 2884         setter: setter, operator: operator)); | 1983         setter: setter, operator: operator)); | 
| 2885   } | 1984   } | 
| 2886 | 1985 | 
| 2887   @override | 1986   @override | 
| 2888   visitUnresolvedStaticSetterPostfix( | 1987   visitUnresolvedStaticSetterPostfix(Send node, MethodElement getter, | 
| 2889       Send node, | 1988       Element element, IncDecOperator operator, arg) { | 
| 2890       MethodElement getter, |  | 
| 2891       Element element, |  | 
| 2892       IncDecOperator operator, |  | 
| 2893       arg) { |  | 
| 2894     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_POSTFIX, | 1989     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_POSTFIX, | 
| 2895         getter: getter, operator: operator)); | 1990         getter: getter, operator: operator)); | 
| 2896   } | 1991   } | 
| 2897 | 1992 | 
| 2898   @override | 1993   @override | 
| 2899   visitUnresolvedTopLevelSetterPostfix( | 1994   visitUnresolvedTopLevelSetterPostfix(Send node, MethodElement getter, | 
| 2900       Send node, | 1995       Element element, IncDecOperator operator, arg) { | 
| 2901       MethodElement getter, |  | 
| 2902       Element element, |  | 
| 2903       IncDecOperator operator, |  | 
| 2904       arg) { |  | 
| 2905     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_POSTFIX, | 1996     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_POSTFIX, | 
| 2906         getter: getter, operator: operator)); | 1997         getter: getter, operator: operator)); | 
| 2907   } | 1998   } | 
| 2908 | 1999 | 
| 2909   @override | 2000   @override | 
| 2910   visitStaticMethodPostfix( | 2001   visitStaticMethodPostfix( | 
| 2911       Send node, | 2002       Send node, MethodElement method, IncDecOperator operator, arg) { | 
| 2912       MethodElement method, |  | 
| 2913       IncDecOperator operator, |  | 
| 2914       arg) { |  | 
| 2915     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_POSTFIX, | 2003     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_POSTFIX, | 
| 2916         element: method, operator: operator)); | 2004         element: method, operator: operator)); | 
| 2917   } | 2005   } | 
| 2918 | 2006 | 
| 2919   @override | 2007   @override | 
| 2920   visitTopLevelMethodPostfix( | 2008   visitTopLevelMethodPostfix( | 
| 2921       Send node, | 2009       Send node, MethodElement method, IncDecOperator operator, arg) { | 
| 2922       MethodElement method, |  | 
| 2923       IncDecOperator operator, |  | 
| 2924       arg) { |  | 
| 2925     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_POSTFIX, | 2010     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_POSTFIX, | 
| 2926         element: method, operator: operator)); | 2011         element: method, operator: operator)); | 
| 2927   } | 2012   } | 
| 2928 | 2013 | 
| 2929   @override | 2014   @override | 
| 2930   visitUnresolvedSuperGetterCompound( | 2015   visitUnresolvedSuperGetterCompound(Send node, Element element, | 
| 2931       Send node, Element element, | 2016       MethodElement setter, AssignmentOperator operator, Node rhs, arg) { | 
| 2932       MethodElement setter, |  | 
| 2933       AssignmentOperator operator, |  | 
| 2934       Node rhs, |  | 
| 2935       arg) { |  | 
| 2936     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_COMPOUND, | 2017     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_COMPOUND, | 
| 2937         setter: setter, operator: operator, rhs: rhs)); | 2018         setter: setter, operator: operator, rhs: rhs)); | 
| 2938     apply(rhs, arg); | 2019     apply(rhs, arg); | 
| 2939   } | 2020   } | 
| 2940 | 2021 | 
| 2941   @override | 2022   @override | 
| 2942   visitUnresolvedSuperGetterPostfix( | 2023   visitUnresolvedSuperGetterPostfix(Send node, Element element, | 
| 2943       Send node, | 2024       MethodElement setter, IncDecOperator operator, arg) { | 
| 2944       Element element, |  | 
| 2945       MethodElement setter, |  | 
| 2946       IncDecOperator operator, |  | 
| 2947       arg) { |  | 
| 2948     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_POSTFIX, | 2025     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_POSTFIX, | 
| 2949         setter: setter, operator: operator)); | 2026         setter: setter, operator: operator)); | 
| 2950   } | 2027   } | 
| 2951 | 2028 | 
| 2952   @override | 2029   @override | 
| 2953   visitUnresolvedSuperGetterPrefix( | 2030   visitUnresolvedSuperGetterPrefix(Send node, Element element, | 
| 2954       Send node, | 2031       MethodElement setter, IncDecOperator operator, arg) { | 
| 2955       Element element, |  | 
| 2956       MethodElement setter, |  | 
| 2957       IncDecOperator operator, |  | 
| 2958       arg) { |  | 
| 2959     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_PREFIX, | 2032     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_PREFIX, | 
| 2960         setter: setter, operator: operator)); | 2033         setter: setter, operator: operator)); | 
| 2961   } | 2034   } | 
| 2962 | 2035 | 
| 2963   @override | 2036   @override | 
| 2964   visitUnresolvedSuperSetterCompound( | 2037   visitUnresolvedSuperSetterCompound(Send node, MethodElement getter, | 
| 2965       Send node, MethodElement getter, | 2038       Element element, AssignmentOperator operator, Node rhs, arg) { | 
| 2966       Element element, |  | 
| 2967       AssignmentOperator operator, |  | 
| 2968       Node rhs, |  | 
| 2969       arg) { |  | 
| 2970     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_COMPOUND, | 2039     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_COMPOUND, | 
| 2971         getter: getter, operator: operator, rhs: rhs)); | 2040         getter: getter, operator: operator, rhs: rhs)); | 
| 2972     apply(rhs, arg); | 2041     apply(rhs, arg); | 
| 2973   } | 2042   } | 
| 2974 | 2043 | 
| 2975   @override | 2044   @override | 
| 2976   visitUnresolvedSuperSetterPostfix( | 2045   visitUnresolvedSuperSetterPostfix(Send node, MethodElement getter, | 
| 2977       Send node, | 2046       Element element, IncDecOperator operator, arg) { | 
| 2978       MethodElement getter, |  | 
| 2979       Element element, |  | 
| 2980       IncDecOperator operator, |  | 
| 2981       arg) { |  | 
| 2982     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_POSTFIX, | 2047     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_POSTFIX, | 
| 2983         getter: getter, operator: operator)); | 2048         getter: getter, operator: operator)); | 
| 2984   } | 2049   } | 
| 2985 | 2050 | 
| 2986   @override | 2051   @override | 
| 2987   visitUnresolvedSuperSetterPrefix( | 2052   visitUnresolvedSuperSetterPrefix(Send node, MethodElement getter, | 
| 2988       Send node, | 2053       Element element, IncDecOperator operator, arg) { | 
| 2989       MethodElement getter, |  | 
| 2990       Element element, |  | 
| 2991       IncDecOperator operator, |  | 
| 2992       arg) { |  | 
| 2993     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_PREFIX, | 2054     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_PREFIX, | 
| 2994         getter: getter, operator: operator)); | 2055         getter: getter, operator: operator)); | 
| 2995   } | 2056   } | 
| 2996 | 2057 | 
| 2997   @override | 2058   @override | 
| 2998   visitIfNotNullDynamicPropertyGet( | 2059   visitIfNotNullDynamicPropertyGet(Send node, Node receiver, Name name, arg) { | 
| 2999       Send node, |  | 
| 3000       Node receiver, |  | 
| 3001       Name name, |  | 
| 3002       arg) { |  | 
| 3003     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_GET, | 2060     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_GET, | 
| 3004         receiver: receiver, name: name)); | 2061         receiver: receiver, name: name)); | 
| 3005     super.visitIfNotNullDynamicPropertyGet(node, receiver, name, arg); | 2062     super.visitIfNotNullDynamicPropertyGet(node, receiver, name, arg); | 
| 3006   } | 2063   } | 
| 3007 | 2064 | 
| 3008   @override | 2065   @override | 
| 3009   visitIfNotNullDynamicPropertySet( | 2066   visitIfNotNullDynamicPropertySet( | 
| 3010       Send node, | 2067       Send node, Node receiver, Name name, Node rhs, arg) { | 
| 3011       Node receiver, |  | 
| 3012       Name name, |  | 
| 3013       Node rhs, |  | 
| 3014       arg) { |  | 
| 3015     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_SET, | 2068     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_SET, | 
| 3016         receiver: receiver, name: name, rhs: rhs)); | 2069         receiver: receiver, name: name, rhs: rhs)); | 
| 3017     super.visitIfNotNullDynamicPropertySet(node, receiver, name, rhs, arg); | 2070     super.visitIfNotNullDynamicPropertySet(node, receiver, name, rhs, arg); | 
| 3018   } | 2071   } | 
| 3019 | 2072 | 
| 3020   @override | 2073   @override | 
| 3021   visitIfNotNullDynamicPropertyInvoke( | 2074   visitIfNotNullDynamicPropertyInvoke( | 
| 3022       Send node, | 2075       Send node, Node receiver, NodeList arguments, Selector selector, arg) { | 
| 3023       Node receiver, |  | 
| 3024       NodeList arguments, |  | 
| 3025       Selector selector, |  | 
| 3026       arg) { |  | 
| 3027     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_INVOKE, | 2076     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_INVOKE, | 
| 3028         receiver: receiver, selector: selector, arguments: arguments)); | 2077         receiver: receiver, selector: selector, arguments: arguments)); | 
| 3029     super.visitIfNotNullDynamicPropertyInvoke( | 2078     super.visitIfNotNullDynamicPropertyInvoke( | 
| 3030         node, receiver, arguments, selector, arg); | 2079         node, receiver, arguments, selector, arg); | 
| 3031   } | 2080   } | 
| 3032 | 2081 | 
| 3033   @override | 2082   @override | 
| 3034   visitIfNotNullDynamicPropertyPrefix( | 2083   visitIfNotNullDynamicPropertyPrefix( | 
| 3035       Send node, | 2084       Send node, Node receiver, Name name, IncDecOperator operator, arg) { | 
| 3036       Node receiver, |  | 
| 3037       Name name, |  | 
| 3038       IncDecOperator operator, |  | 
| 3039       arg) { |  | 
| 3040     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_PREFIX, | 2085     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_PREFIX, | 
| 3041         receiver: receiver, name: name, operator: operator)); | 2086         receiver: receiver, name: name, operator: operator)); | 
| 3042     super.visitIfNotNullDynamicPropertyPrefix( | 2087     super.visitIfNotNullDynamicPropertyPrefix( | 
| 3043         node, receiver, name, operator, arg); | 2088         node, receiver, name, operator, arg); | 
| 3044   } | 2089   } | 
| 3045 | 2090 | 
| 3046   @override | 2091   @override | 
| 3047   visitIfNotNullDynamicPropertyPostfix( | 2092   visitIfNotNullDynamicPropertyPostfix( | 
| 3048       Send node, | 2093       Send node, Node receiver, Name name, IncDecOperator operator, arg) { | 
| 3049       Node receiver, |  | 
| 3050       Name name, |  | 
| 3051       IncDecOperator operator, |  | 
| 3052       arg) { |  | 
| 3053     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_POSTFIX, | 2094     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_POSTFIX, | 
| 3054         receiver: receiver, name: name, operator: operator)); | 2095         receiver: receiver, name: name, operator: operator)); | 
| 3055     super.visitIfNotNullDynamicPropertyPostfix( | 2096     super.visitIfNotNullDynamicPropertyPostfix( | 
| 3056         node, receiver, name, operator, arg); | 2097         node, receiver, name, operator, arg); | 
| 3057   } | 2098   } | 
| 3058 | 2099 | 
| 3059   @override | 2100   @override | 
| 3060   visitIfNotNullDynamicPropertyCompound( | 2101   visitIfNotNullDynamicPropertyCompound(Send node, Node receiver, Name name, | 
| 3061       Send node, | 2102       AssignmentOperator operator, Node rhs, arg) { | 
| 3062       Node receiver, |  | 
| 3063       Name name, |  | 
| 3064       AssignmentOperator operator, |  | 
| 3065       Node rhs, |  | 
| 3066       arg) { |  | 
| 3067     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_COMPOUND, | 2103     visits.add(new Visit(VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_COMPOUND, | 
| 3068         receiver: receiver, name: name, operator: operator, rhs: rhs)); | 2104         receiver: receiver, name: name, operator: operator, rhs: rhs)); | 
| 3069     super.visitIfNotNullDynamicPropertyCompound( | 2105     super.visitIfNotNullDynamicPropertyCompound( | 
| 3070         node, receiver, name, operator, rhs, arg); | 2106         node, receiver, name, operator, rhs, arg); | 
| 3071   } | 2107   } | 
| 3072 | 2108 | 
| 3073   @override | 2109   @override | 
| 3074   visitIfNull( | 2110   visitIfNull(Send node, Node left, Node right, arg) { | 
| 3075       Send node, |  | 
| 3076       Node left, |  | 
| 3077       Node right, |  | 
| 3078       arg) { |  | 
| 3079     visits.add(new Visit(VisitKind.VISIT_IF_NULL, left: left, right: right)); | 2111     visits.add(new Visit(VisitKind.VISIT_IF_NULL, left: left, right: right)); | 
| 3080     super.visitIfNull(node, left, right, arg); | 2112     super.visitIfNull(node, left, right, arg); | 
| 3081   } | 2113   } | 
| 3082 | 2114 | 
| 3083   @override | 2115   @override | 
| 3084   visitConstantGet( | 2116   visitConstantGet(Send node, ConstantExpression constant, arg) { | 
| 3085       Send node, |  | 
| 3086       ConstantExpression constant, |  | 
| 3087       arg) { |  | 
| 3088     visits.add(new Visit(VisitKind.VISIT_CONSTANT_GET, | 2117     visits.add(new Visit(VisitKind.VISIT_CONSTANT_GET, | 
| 3089         constant: constant.toDartText())); | 2118         constant: constant.toDartText())); | 
| 3090     super.visitConstantGet(node, constant, arg); | 2119     super.visitConstantGet(node, constant, arg); | 
| 3091   } | 2120   } | 
| 3092 | 2121 | 
| 3093   @override | 2122   @override | 
| 3094   visitConstantInvoke( | 2123   visitConstantInvoke(Send node, ConstantExpression constant, | 
| 3095       Send node, | 2124       NodeList arguments, CallStructure callStructure, arg) { | 
| 3096       ConstantExpression constant, |  | 
| 3097       NodeList arguments, |  | 
| 3098       CallStructure callStructure, |  | 
| 3099       arg) { |  | 
| 3100     visits.add(new Visit(VisitKind.VISIT_CONSTANT_INVOKE, | 2125     visits.add(new Visit(VisitKind.VISIT_CONSTANT_INVOKE, | 
| 3101         constant: constant.toDartText())); | 2126         constant: constant.toDartText())); | 
| 3102     super.visitConstantInvoke(node, constant, arguments, callStructure, arg); | 2127     super.visitConstantInvoke(node, constant, arguments, callStructure, arg); | 
| 3103   } | 2128   } | 
| 3104 | 2129 | 
| 3105   @override | 2130   @override | 
| 3106   previsitDeferredAccess( | 2131   previsitDeferredAccess(Send node, PrefixElement prefix, arg) { | 
| 3107       Send node, |  | 
| 3108       PrefixElement prefix, |  | 
| 3109       arg) { |  | 
| 3110     visits.add(new Visit(VisitKind.PREVISIT_DEFERRED_ACCESS, element: prefix)); | 2132     visits.add(new Visit(VisitKind.PREVISIT_DEFERRED_ACCESS, element: prefix)); | 
| 3111   } | 2133   } | 
| 3112 | 2134 | 
| 3113   @override | 2135   @override | 
| 3114   visitClassTypeLiteralSetIfNull( | 2136   visitClassTypeLiteralSetIfNull( | 
| 3115       Send node, | 2137       Send node, ConstantExpression constant, Node rhs, arg) { | 
| 3116       ConstantExpression constant, |  | 
| 3117       Node rhs, |  | 
| 3118       arg) { |  | 
| 3119     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_SET_IF_NULL, | 2138     visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_SET_IF_NULL, | 
| 3120         constant: constant.toDartText(), rhs: rhs)); | 2139         constant: constant.toDartText(), rhs: rhs)); | 
| 3121     super.visitClassTypeLiteralSetIfNull(node, constant, rhs, arg); | 2140     super.visitClassTypeLiteralSetIfNull(node, constant, rhs, arg); | 
| 3122   } | 2141   } | 
| 3123 | 2142 | 
| 3124   @override | 2143   @override | 
| 3125   visitDynamicPropertySetIfNull( | 2144   visitDynamicPropertySetIfNull( | 
| 3126       Send node, | 2145       Send node, Node receiver, Name name, Node rhs, arg) { | 
| 3127       Node receiver, |  | 
| 3128       Name name, |  | 
| 3129       Node rhs, |  | 
| 3130       arg) { |  | 
| 3131     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_SET_IF_NULL, | 2146     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_SET_IF_NULL, | 
| 3132         receiver: receiver, name: name, rhs: rhs)); | 2147         receiver: receiver, name: name, rhs: rhs)); | 
| 3133     super.visitDynamicPropertySetIfNull(node, receiver, name, rhs, arg); | 2148     super.visitDynamicPropertySetIfNull(node, receiver, name, rhs, arg); | 
| 3134   } | 2149   } | 
| 3135 | 2150 | 
| 3136   @override | 2151   @override | 
| 3137   visitDynamicTypeLiteralSetIfNull( | 2152   visitDynamicTypeLiteralSetIfNull( | 
| 3138       Send node, | 2153       Send node, ConstantExpression constant, Node rhs, arg) { | 
| 3139       ConstantExpression constant, |  | 
| 3140       Node rhs, |  | 
| 3141       arg) { |  | 
| 3142     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_SET_IF_NULL, | 2154     visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_SET_IF_NULL, | 
| 3143         constant: constant.toDartText(), rhs: rhs)); | 2155         constant: constant.toDartText(), rhs: rhs)); | 
| 3144     super.visitDynamicTypeLiteralSetIfNull(node, constant, rhs, arg); | 2156     super.visitDynamicTypeLiteralSetIfNull(node, constant, rhs, arg); | 
| 3145   } | 2157   } | 
| 3146 | 2158 | 
| 3147   @override | 2159   @override | 
| 3148   visitFinalLocalVariableSetIfNull( | 2160   visitFinalLocalVariableSetIfNull( | 
| 3149       Send node, | 2161       Send node, LocalVariableElement variable, Node rhs, arg) { | 
| 3150       LocalVariableElement variable, |  | 
| 3151       Node rhs, |  | 
| 3152       arg) { |  | 
| 3153     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_SET_IF_NULL, | 2162     visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_SET_IF_NULL, | 
| 3154         element: variable, rhs: rhs)); | 2163         element: variable, rhs: rhs)); | 
| 3155     super.visitFinalLocalVariableSetIfNull(node, variable, rhs, arg); | 2164     super.visitFinalLocalVariableSetIfNull(node, variable, rhs, arg); | 
| 3156   } | 2165   } | 
| 3157 | 2166 | 
| 3158   @override | 2167   @override | 
| 3159   visitFinalParameterSetIfNull( | 2168   visitFinalParameterSetIfNull( | 
| 3160       Send node, | 2169       Send node, ParameterElement parameter, Node rhs, arg) { | 
| 3161       ParameterElement parameter, |  | 
| 3162       Node rhs, |  | 
| 3163       arg) { |  | 
| 3164     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_SET_IF_NULL, | 2170     visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_SET_IF_NULL, | 
| 3165         element: parameter, rhs: rhs)); | 2171         element: parameter, rhs: rhs)); | 
| 3166     super.visitFinalParameterSetIfNull(node, parameter, rhs, arg); | 2172     super.visitFinalParameterSetIfNull(node, parameter, rhs, arg); | 
| 3167   } | 2173   } | 
| 3168 | 2174 | 
| 3169   @override | 2175   @override | 
| 3170   visitFinalStaticFieldSetIfNull( | 2176   visitFinalStaticFieldSetIfNull(Send node, FieldElement field, Node rhs, arg) { | 
| 3171       Send node, |  | 
| 3172       FieldElement field, |  | 
| 3173       Node rhs, |  | 
| 3174       arg) { |  | 
| 3175     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_SET_IF_NULL, | 2177     visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_SET_IF_NULL, | 
| 3176         element: field, rhs: rhs)); | 2178         element: field, rhs: rhs)); | 
| 3177     super.visitFinalStaticFieldSetIfNull(node, field, rhs, arg); | 2179     super.visitFinalStaticFieldSetIfNull(node, field, rhs, arg); | 
| 3178   } | 2180   } | 
| 3179 | 2181 | 
| 3180   @override | 2182   @override | 
| 3181   visitFinalSuperFieldSetIfNull( | 2183   visitFinalSuperFieldSetIfNull(Send node, FieldElement field, Node rhs, arg) { | 
| 3182       Send node, |  | 
| 3183       FieldElement field, |  | 
| 3184       Node rhs, |  | 
| 3185       arg) { |  | 
| 3186     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_SET_IF_NULL, | 2184     visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_SET_IF_NULL, | 
| 3187         element: field, rhs: rhs)); | 2185         element: field, rhs: rhs)); | 
| 3188     super.visitFinalSuperFieldSetIfNull(node, field, rhs, arg); | 2186     super.visitFinalSuperFieldSetIfNull(node, field, rhs, arg); | 
| 3189   } | 2187   } | 
| 3190 | 2188 | 
| 3191   @override | 2189   @override | 
| 3192   visitFinalTopLevelFieldSetIfNull( | 2190   visitFinalTopLevelFieldSetIfNull( | 
| 3193       Send node, | 2191       Send node, FieldElement field, Node rhs, arg) { | 
| 3194       FieldElement field, |  | 
| 3195       Node rhs, |  | 
| 3196       arg) { |  | 
| 3197     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_SET_IF_NULL, | 2192     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_SET_IF_NULL, | 
| 3198         element: field, rhs: rhs)); | 2193         element: field, rhs: rhs)); | 
| 3199     super.visitFinalTopLevelFieldSetIfNull(node, field, rhs, arg); | 2194     super.visitFinalTopLevelFieldSetIfNull(node, field, rhs, arg); | 
| 3200   } | 2195   } | 
| 3201 | 2196 | 
| 3202   @override | 2197   @override | 
| 3203   visitIfNotNullDynamicPropertySetIfNull( | 2198   visitIfNotNullDynamicPropertySetIfNull( | 
| 3204       Send node, | 2199       Send node, Node receiver, Name name, Node rhs, arg) { | 
| 3205       Node receiver, |  | 
| 3206       Name name, |  | 
| 3207       Node rhs, |  | 
| 3208       arg) { |  | 
| 3209     visits.add(new Visit( | 2200     visits.add(new Visit( | 
| 3210         VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_SET_IF_NULL, | 2201         VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_SET_IF_NULL, | 
| 3211         receiver: receiver, name: name, rhs: rhs)); | 2202         receiver: receiver, | 
| 3212     super.visitIfNotNullDynamicPropertySetIfNull( | 2203         name: name, | 
| 3213         node, receiver, name, rhs, arg); | 2204         rhs: rhs)); | 
|  | 2205     super | 
|  | 2206         .visitIfNotNullDynamicPropertySetIfNull(node, receiver, name, rhs, arg); | 
| 3214   } | 2207   } | 
| 3215 | 2208 | 
| 3216   @override | 2209   @override | 
| 3217   visitLocalFunctionSetIfNull( | 2210   visitLocalFunctionSetIfNull( | 
| 3218       Send node, | 2211       Send node, LocalFunctionElement function, Node rhs, arg) { | 
| 3219       LocalFunctionElement function, |  | 
| 3220       Node rhs, |  | 
| 3221       arg) { |  | 
| 3222     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_SET_IF_NULL, | 2212     visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_SET_IF_NULL, | 
| 3223         element: function, rhs: rhs)); | 2213         element: function, rhs: rhs)); | 
| 3224     super.visitLocalFunctionSetIfNull(node, function, rhs, arg); | 2214     super.visitLocalFunctionSetIfNull(node, function, rhs, arg); | 
| 3225   } | 2215   } | 
| 3226 | 2216 | 
| 3227   @override | 2217   @override | 
| 3228   visitLocalVariableSetIfNull( | 2218   visitLocalVariableSetIfNull( | 
| 3229       Send node, | 2219       Send node, LocalVariableElement variable, Node rhs, arg) { | 
| 3230       LocalVariableElement variable, |  | 
| 3231       Node rhs, |  | 
| 3232       arg) { |  | 
| 3233     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_SET_IF_NULL, | 2220     visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_SET_IF_NULL, | 
| 3234         element: variable, rhs: rhs)); | 2221         element: variable, rhs: rhs)); | 
| 3235     super.visitLocalVariableSetIfNull(node, variable, rhs, arg); | 2222     super.visitLocalVariableSetIfNull(node, variable, rhs, arg); | 
| 3236   } | 2223   } | 
| 3237 | 2224 | 
| 3238   @override | 2225   @override | 
| 3239   visitParameterSetIfNull( | 2226   visitParameterSetIfNull( | 
| 3240       Send node, | 2227       Send node, ParameterElement parameter, Node rhs, arg) { | 
| 3241       ParameterElement parameter, |  | 
| 3242       Node rhs, |  | 
| 3243       arg) { |  | 
| 3244     visits.add(new Visit(VisitKind.VISIT_PARAMETER_SET_IF_NULL, | 2228     visits.add(new Visit(VisitKind.VISIT_PARAMETER_SET_IF_NULL, | 
| 3245         element: parameter, rhs: rhs)); | 2229         element: parameter, rhs: rhs)); | 
| 3246     super.visitParameterSetIfNull(node, parameter, rhs, arg); | 2230     super.visitParameterSetIfNull(node, parameter, rhs, arg); | 
| 3247   } | 2231   } | 
| 3248 | 2232 | 
| 3249   @override | 2233   @override | 
| 3250   visitStaticFieldSetIfNull( | 2234   visitStaticFieldSetIfNull(Send node, FieldElement field, Node rhs, arg) { | 
| 3251       Send node, |  | 
| 3252       FieldElement field, |  | 
| 3253       Node rhs, |  | 
| 3254       arg) { |  | 
| 3255     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_SET_IF_NULL, | 2235     visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_SET_IF_NULL, | 
| 3256         element: field, rhs: rhs)); | 2236         element: field, rhs: rhs)); | 
| 3257     super.visitStaticFieldSetIfNull(node, field, rhs, arg); | 2237     super.visitStaticFieldSetIfNull(node, field, rhs, arg); | 
| 3258   } | 2238   } | 
| 3259 | 2239 | 
| 3260   @override | 2240   @override | 
| 3261   visitStaticGetterSetterSetIfNull( | 2241   visitStaticGetterSetterSetIfNull(Send node, FunctionElement getter, | 
| 3262       Send node, | 2242       FunctionElement setter, Node rhs, arg) { | 
| 3263       FunctionElement getter, |  | 
| 3264       FunctionElement setter, |  | 
| 3265       Node rhs, |  | 
| 3266       arg) { |  | 
| 3267     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_SET_IF_NULL, | 2243     visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_SET_IF_NULL, | 
| 3268         getter: getter, setter: setter, rhs: rhs)); | 2244         getter: getter, setter: setter, rhs: rhs)); | 
| 3269     super.visitStaticGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 2245     super.visitStaticGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 
| 3270   } | 2246   } | 
| 3271 | 2247 | 
| 3272   @override | 2248   @override | 
| 3273   visitStaticMethodSetIfNull( | 2249   visitStaticMethodSetIfNull(Send node, FunctionElement method, Node rhs, arg) { | 
| 3274       Send node, |  | 
| 3275       FunctionElement method, |  | 
| 3276       Node rhs, |  | 
| 3277       arg) { |  | 
| 3278     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SET_IF_NULL, | 2250     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SET_IF_NULL, | 
| 3279         element: method, rhs: rhs)); | 2251         element: method, rhs: rhs)); | 
| 3280     super.visitStaticMethodSetIfNull(node, method, rhs, arg); | 2252     super.visitStaticMethodSetIfNull(node, method, rhs, arg); | 
| 3281   } | 2253   } | 
| 3282 | 2254 | 
| 3283   @override | 2255   @override | 
| 3284   visitStaticMethodSetterSetIfNull( | 2256   visitStaticMethodSetterSetIfNull( | 
| 3285       Send node, | 2257       Send node, MethodElement method, MethodElement setter, Node rhs, arg) { | 
| 3286       MethodElement method, |  | 
| 3287       MethodElement setter, |  | 
| 3288       Node rhs, |  | 
| 3289       arg) { |  | 
| 3290     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_SET_IF_NULL, | 2258     visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_SET_IF_NULL, | 
| 3291         getter: method, setter: setter, rhs: rhs)); | 2259         getter: method, setter: setter, rhs: rhs)); | 
| 3292     super.visitStaticMethodSetterSetIfNull(node, method, setter, rhs, arg); | 2260     super.visitStaticMethodSetterSetIfNull(node, method, setter, rhs, arg); | 
| 3293   } | 2261   } | 
| 3294 | 2262 | 
| 3295   @override | 2263   @override | 
| 3296   visitSuperFieldFieldSetIfNull( | 2264   visitSuperFieldFieldSetIfNull(Send node, FieldElement readField, | 
| 3297       Send node, | 2265       FieldElement writtenField, Node rhs, arg) { | 
| 3298       FieldElement readField, |  | 
| 3299       FieldElement writtenField, |  | 
| 3300       Node rhs, |  | 
| 3301       arg) { |  | 
| 3302     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_SET_IF_NULL, | 2266     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_SET_IF_NULL, | 
| 3303         getter: readField, setter: writtenField, rhs: rhs)); | 2267         getter: readField, setter: writtenField, rhs: rhs)); | 
| 3304     super.visitSuperFieldFieldSetIfNull( | 2268     super | 
| 3305         node, readField, writtenField, rhs, arg); | 2269         .visitSuperFieldFieldSetIfNull(node, readField, writtenField, rhs, arg); | 
| 3306   } | 2270   } | 
| 3307 | 2271 | 
| 3308   @override | 2272   @override | 
| 3309   visitSuperFieldSetIfNull( | 2273   visitSuperFieldSetIfNull(Send node, FieldElement field, Node rhs, arg) { | 
| 3310       Send node, |  | 
| 3311       FieldElement field, |  | 
| 3312       Node rhs, |  | 
| 3313       arg) { |  | 
| 3314     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SET_IF_NULL, | 2274     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SET_IF_NULL, | 
| 3315         element: field, rhs: rhs)); | 2275         element: field, rhs: rhs)); | 
| 3316     super.visitSuperFieldSetIfNull(node, field, rhs, arg); | 2276     super.visitSuperFieldSetIfNull(node, field, rhs, arg); | 
| 3317   } | 2277   } | 
| 3318 | 2278 | 
| 3319   @override | 2279   @override | 
| 3320   visitSuperFieldSetterSetIfNull( | 2280   visitSuperFieldSetterSetIfNull( | 
| 3321       Send node, | 2281       Send node, FieldElement field, FunctionElement setter, Node rhs, arg) { | 
| 3322       FieldElement field, |  | 
| 3323       FunctionElement setter, |  | 
| 3324       Node rhs, |  | 
| 3325       arg) { |  | 
| 3326     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL, | 2282     visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL, | 
| 3327         getter: field, setter: setter, rhs: rhs)); | 2283         getter: field, setter: setter, rhs: rhs)); | 
| 3328     super.visitSuperFieldSetterSetIfNull(node, field, setter, rhs, arg); | 2284     super.visitSuperFieldSetterSetIfNull(node, field, setter, rhs, arg); | 
| 3329   } | 2285   } | 
| 3330 | 2286 | 
| 3331   @override | 2287   @override | 
| 3332   visitSuperGetterFieldSetIfNull( | 2288   visitSuperGetterFieldSetIfNull( | 
| 3333       Send node, | 2289       Send node, FunctionElement getter, FieldElement field, Node rhs, arg) { | 
| 3334       FunctionElement getter, |  | 
| 3335       FieldElement field, |  | 
| 3336       Node rhs, |  | 
| 3337       arg) { |  | 
| 3338     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_SET_IF_NULL, | 2290     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_SET_IF_NULL, | 
| 3339         getter: getter, setter: field, rhs: rhs)); | 2291         getter: getter, setter: field, rhs: rhs)); | 
| 3340     super.visitSuperGetterFieldSetIfNull(node, getter, field, rhs, arg); | 2292     super.visitSuperGetterFieldSetIfNull(node, getter, field, rhs, arg); | 
| 3341   } | 2293   } | 
| 3342 | 2294 | 
| 3343   @override | 2295   @override | 
| 3344   visitSuperGetterSetterSetIfNull( | 2296   visitSuperGetterSetterSetIfNull(Send node, FunctionElement getter, | 
| 3345       Send node, | 2297       FunctionElement setter, Node rhs, arg) { | 
| 3346       FunctionElement getter, |  | 
| 3347       FunctionElement setter, |  | 
| 3348       Node rhs, |  | 
| 3349       arg) { |  | 
| 3350     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_SET_IF_NULL, | 2298     visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_SET_IF_NULL, | 
| 3351         getter: getter, setter: setter, rhs: rhs)); | 2299         getter: getter, setter: setter, rhs: rhs)); | 
| 3352     super.visitSuperGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 2300     super.visitSuperGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 
| 3353   } | 2301   } | 
| 3354 | 2302 | 
| 3355   @override | 2303   @override | 
| 3356   visitSuperMethodSetIfNull( | 2304   visitSuperMethodSetIfNull(Send node, FunctionElement method, Node rhs, arg) { | 
| 3357       Send node, |  | 
| 3358       FunctionElement method, |  | 
| 3359       Node rhs, |  | 
| 3360       arg) { |  | 
| 3361     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SET_IF_NULL, | 2305     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SET_IF_NULL, | 
| 3362         element: method, rhs: rhs)); | 2306         element: method, rhs: rhs)); | 
| 3363     super.visitSuperMethodSetIfNull(node, method, rhs, arg); | 2307     super.visitSuperMethodSetIfNull(node, method, rhs, arg); | 
| 3364   } | 2308   } | 
| 3365 | 2309 | 
| 3366   @override | 2310   @override | 
| 3367   visitSuperMethodSetterSetIfNull( | 2311   visitSuperMethodSetterSetIfNull(Send node, FunctionElement method, | 
| 3368       Send node, | 2312       FunctionElement setter, Node rhs, arg) { | 
| 3369       FunctionElement method, |  | 
| 3370       FunctionElement setter, |  | 
| 3371       Node rhs, |  | 
| 3372       arg) { |  | 
| 3373     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_SET_IF_NULL, | 2313     visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_SET_IF_NULL, | 
| 3374         getter: method, setter: setter, rhs: rhs)); | 2314         getter: method, setter: setter, rhs: rhs)); | 
| 3375     super.visitSuperMethodSetterSetIfNull(node, method, setter, rhs, arg); | 2315     super.visitSuperMethodSetterSetIfNull(node, method, setter, rhs, arg); | 
| 3376   } | 2316   } | 
| 3377 | 2317 | 
| 3378   @override | 2318   @override | 
| 3379   visitThisPropertySetIfNull( | 2319   visitThisPropertySetIfNull(Send node, Name name, Node rhs, arg) { | 
| 3380       Send node, |  | 
| 3381       Name name, |  | 
| 3382       Node rhs, |  | 
| 3383       arg) { |  | 
| 3384     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_SET_IF_NULL, | 2320     visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_SET_IF_NULL, | 
| 3385         name: name, rhs: rhs)); | 2321         name: name, rhs: rhs)); | 
| 3386     super.visitThisPropertySetIfNull(node, name, rhs, arg); | 2322     super.visitThisPropertySetIfNull(node, name, rhs, arg); | 
| 3387   } | 2323   } | 
| 3388 | 2324 | 
| 3389   @override | 2325   @override | 
| 3390   visitTopLevelFieldSetIfNull( | 2326   visitTopLevelFieldSetIfNull(Send node, FieldElement field, Node rhs, arg) { | 
| 3391       Send node, |  | 
| 3392       FieldElement field, |  | 
| 3393       Node rhs, |  | 
| 3394       arg) { |  | 
| 3395     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_SET_IF_NULL, | 2327     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_SET_IF_NULL, | 
| 3396         element: field, rhs: rhs)); | 2328         element: field, rhs: rhs)); | 
| 3397     super.visitTopLevelFieldSetIfNull(node, field, rhs, arg); | 2329     super.visitTopLevelFieldSetIfNull(node, field, rhs, arg); | 
| 3398   } | 2330   } | 
| 3399 | 2331 | 
| 3400   @override | 2332   @override | 
| 3401   visitTopLevelGetterSetterSetIfNull( | 2333   visitTopLevelGetterSetterSetIfNull(Send node, FunctionElement getter, | 
| 3402       Send node, | 2334       FunctionElement setter, Node rhs, arg) { | 
| 3403       FunctionElement getter, |  | 
| 3404       FunctionElement setter, |  | 
| 3405       Node rhs, |  | 
| 3406       arg) { |  | 
| 3407     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_SET_IF_NULL, | 2335     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_SET_IF_NULL, | 
| 3408         getter: getter, setter: setter, rhs: rhs)); | 2336         getter: getter, setter: setter, rhs: rhs)); | 
| 3409     super.visitTopLevelGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 2337     super.visitTopLevelGetterSetterSetIfNull(node, getter, setter, rhs, arg); | 
| 3410   } | 2338   } | 
| 3411 | 2339 | 
| 3412   @override | 2340   @override | 
| 3413   visitTopLevelMethodSetIfNull( | 2341   visitTopLevelMethodSetIfNull( | 
| 3414       Send node, | 2342       Send node, FunctionElement method, Node rhs, arg) { | 
| 3415       FunctionElement method, |  | 
| 3416       Node rhs, |  | 
| 3417       arg) { |  | 
| 3418     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SET_IF_NULL, | 2343     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SET_IF_NULL, | 
| 3419         element: method, rhs: rhs)); | 2344         element: method, rhs: rhs)); | 
| 3420     super.visitTopLevelMethodSetIfNull(node, method, rhs, arg); | 2345     super.visitTopLevelMethodSetIfNull(node, method, rhs, arg); | 
| 3421   } | 2346   } | 
| 3422 | 2347 | 
| 3423   @override | 2348   @override | 
| 3424   visitTopLevelMethodSetterSetIfNull( | 2349   visitTopLevelMethodSetterSetIfNull(Send node, FunctionElement method, | 
| 3425       Send node, | 2350       FunctionElement setter, Node rhs, arg) { | 
| 3426       FunctionElement method, |  | 
| 3427       FunctionElement setter, |  | 
| 3428       Node rhs, |  | 
| 3429       arg) { |  | 
| 3430     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_SET_IF_NULL, | 2351     visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_SET_IF_NULL, | 
| 3431         getter: method, setter: setter, rhs: rhs)); | 2352         getter: method, setter: setter, rhs: rhs)); | 
| 3432     super.visitTopLevelMethodSetterSetIfNull(node, method, setter, rhs, arg); | 2353     super.visitTopLevelMethodSetterSetIfNull(node, method, setter, rhs, arg); | 
| 3433   } | 2354   } | 
| 3434 | 2355 | 
| 3435   @override | 2356   @override | 
| 3436   visitTypeVariableTypeLiteralSetIfNull( | 2357   visitTypeVariableTypeLiteralSetIfNull( | 
| 3437       Send node, | 2358       Send node, TypeVariableElement element, Node rhs, arg) { | 
| 3438       TypeVariableElement element, |  | 
| 3439       Node rhs, |  | 
| 3440       arg) { |  | 
| 3441     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_SET_IF_NULL, | 2359     visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_SET_IF_NULL, | 
| 3442         element: element, rhs: rhs)); | 2360         element: element, rhs: rhs)); | 
| 3443     super.visitTypeVariableTypeLiteralSetIfNull(node, element, rhs, arg); | 2361     super.visitTypeVariableTypeLiteralSetIfNull(node, element, rhs, arg); | 
| 3444   } | 2362   } | 
| 3445 | 2363 | 
| 3446   @override | 2364   @override | 
| 3447   visitTypedefTypeLiteralSetIfNull( | 2365   visitTypedefTypeLiteralSetIfNull( | 
| 3448       Send node, | 2366       Send node, ConstantExpression constant, Node rhs, arg) { | 
| 3449       ConstantExpression constant, |  | 
| 3450       Node rhs, |  | 
| 3451       arg) { |  | 
| 3452     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_SET_IF_NULL, | 2367     visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_SET_IF_NULL, | 
| 3453         constant: constant.toDartText(), rhs: rhs)); | 2368         constant: constant.toDartText(), rhs: rhs)); | 
| 3454     super.visitTypedefTypeLiteralSetIfNull(node, constant, rhs, arg); | 2369     super.visitTypedefTypeLiteralSetIfNull(node, constant, rhs, arg); | 
| 3455   } | 2370   } | 
| 3456 | 2371 | 
| 3457   @override | 2372   @override | 
| 3458   visitUnresolvedSetIfNull( | 2373   visitUnresolvedSetIfNull(Send node, Element element, Node rhs, arg) { | 
| 3459       Send node, |  | 
| 3460       Element element, |  | 
| 3461       Node rhs, |  | 
| 3462       arg) { |  | 
| 3463     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SET_IF_NULL, | 2374     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SET_IF_NULL, | 
| 3464         name: element.name, rhs: rhs)); | 2375         name: element.name, rhs: rhs)); | 
| 3465     super.visitUnresolvedSetIfNull(node, element, rhs, arg); | 2376     super.visitUnresolvedSetIfNull(node, element, rhs, arg); | 
| 3466   } | 2377   } | 
| 3467 | 2378 | 
| 3468   @override | 2379   @override | 
| 3469   visitUnresolvedStaticGetterSetIfNull( | 2380   visitUnresolvedStaticGetterSetIfNull( | 
| 3470       Send node, | 2381       Send node, Element element, MethodElement setter, Node rhs, arg) { | 
| 3471       Element element, |  | 
| 3472       MethodElement setter, |  | 
| 3473       Node rhs, |  | 
| 3474       arg) { |  | 
| 3475     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_SET_IF_NULL, | 2382     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_SET_IF_NULL, | 
| 3476         setter: setter, rhs: rhs)); | 2383         setter: setter, rhs: rhs)); | 
| 3477     super.visitUnresolvedStaticGetterSetIfNull(node, element, setter, rhs, arg); | 2384     super.visitUnresolvedStaticGetterSetIfNull(node, element, setter, rhs, arg); | 
| 3478   } | 2385   } | 
| 3479 | 2386 | 
| 3480   @override | 2387   @override | 
| 3481   visitUnresolvedStaticSetterSetIfNull( | 2388   visitUnresolvedStaticSetterSetIfNull( | 
| 3482       Send node, | 2389       Send node, MethodElement getter, Element element, Node rhs, arg) { | 
| 3483       MethodElement getter, |  | 
| 3484       Element element, |  | 
| 3485       Node rhs, |  | 
| 3486       arg) { |  | 
| 3487     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_SET_IF_NULL, | 2390     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_SET_IF_NULL, | 
| 3488         getter: getter, rhs: rhs)); | 2391         getter: getter, rhs: rhs)); | 
| 3489     super.visitUnresolvedStaticSetterSetIfNull(node, getter, element, rhs, arg); | 2392     super.visitUnresolvedStaticSetterSetIfNull(node, getter, element, rhs, arg); | 
| 3490   } | 2393   } | 
| 3491 | 2394 | 
| 3492   @override | 2395   @override | 
| 3493   visitUnresolvedSuperGetterSetIfNull( | 2396   visitUnresolvedSuperGetterSetIfNull( | 
| 3494       Send node, | 2397       Send node, Element element, MethodElement setter, Node rhs, arg) { | 
| 3495       Element element, |  | 
| 3496       MethodElement setter, |  | 
| 3497       Node rhs, |  | 
| 3498       arg) { |  | 
| 3499     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_SET_IF_NULL, | 2398     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_SET_IF_NULL, | 
| 3500         setter: setter, rhs: rhs)); | 2399         setter: setter, rhs: rhs)); | 
| 3501     super.visitUnresolvedSuperGetterSetIfNull(node, element, setter, rhs, arg); | 2400     super.visitUnresolvedSuperGetterSetIfNull(node, element, setter, rhs, arg); | 
| 3502   } | 2401   } | 
| 3503 | 2402 | 
| 3504   @override | 2403   @override | 
| 3505   visitUnresolvedSuperSetIfNull( | 2404   visitUnresolvedSuperSetIfNull(Send node, Element element, Node rhs, arg) { | 
| 3506       Send node, |  | 
| 3507       Element element, |  | 
| 3508       Node rhs, |  | 
| 3509       arg) { |  | 
| 3510     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SET_IF_NULL, | 2405     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SET_IF_NULL, | 
| 3511         name: element.name, rhs: rhs)); | 2406         name: element.name, rhs: rhs)); | 
| 3512     super.visitUnresolvedSuperSetIfNull(node, element, rhs, arg); | 2407     super.visitUnresolvedSuperSetIfNull(node, element, rhs, arg); | 
| 3513   } | 2408   } | 
| 3514 | 2409 | 
| 3515   @override | 2410   @override | 
| 3516   visitUnresolvedSuperSetterSetIfNull( | 2411   visitUnresolvedSuperSetterSetIfNull( | 
| 3517       Send node, | 2412       Send node, MethodElement getter, Element element, Node rhs, arg) { | 
| 3518       MethodElement getter, |  | 
| 3519       Element element, |  | 
| 3520       Node rhs, |  | 
| 3521       arg) { |  | 
| 3522     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_SET_IF_NULL, | 2413     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_SET_IF_NULL, | 
| 3523         getter: getter, rhs: rhs)); | 2414         getter: getter, rhs: rhs)); | 
| 3524     super.visitUnresolvedSuperSetterSetIfNull(node, getter, element, rhs, arg); | 2415     super.visitUnresolvedSuperSetterSetIfNull(node, getter, element, rhs, arg); | 
| 3525   } | 2416   } | 
| 3526 | 2417 | 
| 3527   @override | 2418   @override | 
| 3528   visitUnresolvedTopLevelGetterSetIfNull( | 2419   visitUnresolvedTopLevelGetterSetIfNull( | 
| 3529       Send node, | 2420       Send node, Element element, MethodElement setter, Node rhs, arg) { | 
| 3530       Element element, |  | 
| 3531       MethodElement setter, |  | 
| 3532       Node rhs, |  | 
| 3533       arg) { |  | 
| 3534     visits.add(new Visit( | 2421     visits.add(new Visit( | 
| 3535         VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_SET_IF_NULL, | 2422         VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_SET_IF_NULL, | 
| 3536         setter: setter, rhs: rhs)); | 2423         setter: setter, | 
|  | 2424         rhs: rhs)); | 
| 3537     super.visitUnresolvedTopLevelGetterSetIfNull( | 2425     super.visitUnresolvedTopLevelGetterSetIfNull( | 
| 3538         node, element, setter, rhs, arg); | 2426         node, element, setter, rhs, arg); | 
| 3539   } | 2427   } | 
| 3540 | 2428 | 
| 3541   @override | 2429   @override | 
| 3542   visitUnresolvedTopLevelSetterSetIfNull( | 2430   visitUnresolvedTopLevelSetterSetIfNull( | 
| 3543       Send node, | 2431       Send node, MethodElement getter, Element element, Node rhs, arg) { | 
| 3544       MethodElement getter, |  | 
| 3545       Element element, |  | 
| 3546       Node rhs, |  | 
| 3547       arg) { |  | 
| 3548     visits.add(new Visit( | 2432     visits.add(new Visit( | 
| 3549         VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_SET_IF_NULL, | 2433         VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_SET_IF_NULL, | 
| 3550         getter: getter, rhs: rhs)); | 2434         getter: getter, | 
|  | 2435         rhs: rhs)); | 
| 3551     super.visitUnresolvedTopLevelSetterSetIfNull( | 2436     super.visitUnresolvedTopLevelSetterSetIfNull( | 
| 3552         node, getter, element, rhs, arg); | 2437         node, getter, element, rhs, arg); | 
| 3553   } | 2438   } | 
| 3554 | 2439 | 
| 3555   @override | 2440   @override | 
| 3556   visitIndexSetIfNull( | 2441   visitIndexSetIfNull(SendSet node, Node receiver, Node index, Node rhs, arg) { | 
| 3557       SendSet node, | 2442     visits.add(new Visit(VisitKind.VISIT_INDEX_SET_IF_NULL, | 
| 3558       Node receiver, |  | 
| 3559       Node index, |  | 
| 3560       Node rhs, |  | 
| 3561       arg) { |  | 
| 3562     visits.add(new Visit( |  | 
| 3563         VisitKind.VISIT_INDEX_SET_IF_NULL, |  | 
| 3564         receiver: receiver, index: index, rhs: rhs)); | 2443         receiver: receiver, index: index, rhs: rhs)); | 
| 3565     super.visitIndexSetIfNull(node, receiver, index, rhs, arg); | 2444     super.visitIndexSetIfNull(node, receiver, index, rhs, arg); | 
| 3566   } | 2445   } | 
| 3567 | 2446 | 
| 3568   @override | 2447   @override | 
| 3569   visitSuperIndexSetIfNull( | 2448   visitSuperIndexSetIfNull(SendSet node, MethodElement getter, | 
| 3570       SendSet node, | 2449       MethodElement setter, Node index, Node rhs, arg) { | 
| 3571       MethodElement getter, | 2450     visits.add(new Visit(VisitKind.VISIT_SUPER_INDEX_SET_IF_NULL, | 
| 3572       MethodElement setter, |  | 
| 3573       Node index, |  | 
| 3574       Node rhs, |  | 
| 3575       arg) { |  | 
| 3576     visits.add(new Visit( |  | 
| 3577         VisitKind.VISIT_SUPER_INDEX_SET_IF_NULL, |  | 
| 3578         getter: getter, setter: setter, index: index, rhs: rhs)); | 2451         getter: getter, setter: setter, index: index, rhs: rhs)); | 
| 3579     super.visitSuperIndexSetIfNull(node, getter, setter, index, rhs, arg); | 2452     super.visitSuperIndexSetIfNull(node, getter, setter, index, rhs, arg); | 
| 3580   } | 2453   } | 
| 3581 | 2454 | 
| 3582   @override | 2455   @override | 
| 3583   visitUnresolvedSuperGetterIndexSetIfNull( | 2456   visitUnresolvedSuperGetterIndexSetIfNull(Send node, Element element, | 
| 3584       Send node, | 2457       MethodElement setter, Node index, Node rhs, arg) { | 
| 3585       Element element, |  | 
| 3586       MethodElement setter, |  | 
| 3587       Node index, |  | 
| 3588       Node rhs, |  | 
| 3589       arg) { |  | 
| 3590     visits.add(new Visit( | 2458     visits.add(new Visit( | 
| 3591         VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_SET_IF_NULL, | 2459         VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_INDEX_SET_IF_NULL, | 
| 3592         setter: setter, index: index, rhs: rhs)); | 2460         setter: setter, | 
|  | 2461         index: index, | 
|  | 2462         rhs: rhs)); | 
| 3593     super.visitUnresolvedSuperGetterIndexSetIfNull( | 2463     super.visitUnresolvedSuperGetterIndexSetIfNull( | 
| 3594         node, element, setter, index, rhs, arg); | 2464         node, element, setter, index, rhs, arg); | 
| 3595   } | 2465   } | 
| 3596 | 2466 | 
| 3597   @override | 2467   @override | 
| 3598   visitUnresolvedSuperSetterIndexSetIfNull( | 2468   visitUnresolvedSuperSetterIndexSetIfNull(Send node, MethodElement getter, | 
| 3599       Send node, | 2469       Element element, Node index, Node rhs, arg) { | 
| 3600       MethodElement getter, |  | 
| 3601       Element element, |  | 
| 3602       Node index, |  | 
| 3603       Node rhs, |  | 
| 3604       arg) { |  | 
| 3605     visits.add(new Visit( | 2470     visits.add(new Visit( | 
| 3606         VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_SET_IF_NULL, | 2471         VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_INDEX_SET_IF_NULL, | 
| 3607         getter: getter, index: index, rhs: rhs)); | 2472         getter: getter, | 
|  | 2473         index: index, | 
|  | 2474         rhs: rhs)); | 
| 3608     super.visitUnresolvedSuperSetterIndexSetIfNull( | 2475     super.visitUnresolvedSuperSetterIndexSetIfNull( | 
| 3609         node, getter, element, index, rhs, arg); | 2476         node, getter, element, index, rhs, arg); | 
| 3610   } | 2477   } | 
| 3611 | 2478 | 
| 3612   @override | 2479   @override | 
| 3613   visitUnresolvedSuperIndexSetIfNull( | 2480   visitUnresolvedSuperIndexSetIfNull( | 
| 3614       Send node, | 2481       Send node, Element element, Node index, Node rhs, arg) { | 
| 3615       Element element, | 2482     visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_SET_IF_NULL, | 
| 3616       Node index, |  | 
| 3617       Node rhs, |  | 
| 3618       arg) { |  | 
| 3619     visits.add(new Visit( |  | 
| 3620         VisitKind.VISIT_UNRESOLVED_SUPER_INDEX_SET_IF_NULL, |  | 
| 3621         index: index, rhs: rhs)); | 2483         index: index, rhs: rhs)); | 
| 3622     super.visitUnresolvedSuperIndexSetIfNull(node, element, index, rhs, arg); | 2484     super.visitUnresolvedSuperIndexSetIfNull(node, element, index, rhs, arg); | 
| 3623   } | 2485   } | 
| 3624 | 2486 | 
| 3625   @override | 2487   @override | 
| 3626   errorInvalidIndexSetIfNull( | 2488   errorInvalidIndexSetIfNull( | 
| 3627       SendSet node, | 2489       SendSet node, ErroneousElement error, Node index, Node rhs, arg) { | 
| 3628       ErroneousElement error, | 2490     visits.add( | 
| 3629       Node index, | 2491         new Visit(VisitKind.ERROR_INVALID_SET_IF_NULL, index: index, rhs: rhs)); | 
| 3630       Node rhs, |  | 
| 3631       arg) { |  | 
| 3632     visits.add(new Visit( |  | 
| 3633         VisitKind.ERROR_INVALID_SET_IF_NULL, |  | 
| 3634         index: index, rhs: rhs)); |  | 
| 3635     super.visitUnresolvedSuperIndexSetIfNull(node, error, index, rhs, arg); | 2492     super.visitUnresolvedSuperIndexSetIfNull(node, error, index, rhs, arg); | 
| 3636   } | 2493   } | 
| 3637 } | 2494 } | 
| OLD | NEW | 
|---|