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

Side by Side Diff: tests/compiler/dart2js/semantic_visitor_test_send_visitor.dart

Issue 1313323002: Add visitor methods specific to ??= to SemanticSendVisitor. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Updated cf. comments. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tests/compiler/dart2js/semantic_visitor_test_send_data.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of dart2js.semantics_visitor_test; 5 part of dart2js.semantics_visitor_test;
6 6
7 class SemanticSendTestVisitor extends SemanticTestVisitor { 7 class SemanticSendTestVisitor extends SemanticTestVisitor {
8 8
9 SemanticSendTestVisitor(TreeElements elements) : super(elements); 9 SemanticSendTestVisitor(TreeElements elements) : super(elements);
10 10
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 Send node, 98 Send node,
99 ErroneousElement error, 99 ErroneousElement error,
100 Node rhs, 100 Node rhs,
101 arg) { 101 arg) {
102 visits.add(new Visit(VisitKind.ERROR_INVALID_SET, 102 visits.add(new Visit(VisitKind.ERROR_INVALID_SET,
103 error: error.messageKind, rhs: rhs)); 103 error: error.messageKind, rhs: rhs));
104 super.errorInvalidSet(node, error, rhs, arg); 104 super.errorInvalidSet(node, error, rhs, arg);
105 } 105 }
106 106
107 @override 107 @override
108 errorInvalidSetIfNull(
109 Send node,
110 ErroneousElement error,
111 Node rhs,
112 arg) {
113 visits.add(new Visit(VisitKind.ERROR_INVALID_SET_IF_NULL,
114 error: error.messageKind, rhs: rhs));
115 super.errorInvalidSetIfNull(node, error, rhs, arg);
116 }
117
118 @override
108 errorInvalidUnary( 119 errorInvalidUnary(
109 Send node, 120 Send node,
110 UnaryOperator operator, 121 UnaryOperator operator,
111 ErroneousElement error, 122 ErroneousElement error,
112 arg) { 123 arg) {
113 visits.add(new Visit(VisitKind.ERROR_INVALID_UNARY, 124 visits.add(new Visit(VisitKind.ERROR_INVALID_UNARY,
114 error: error.messageKind, operator: operator)); 125 error: error.messageKind, operator: operator));
115 super.errorInvalidUnary(node, operator, error, arg); 126 super.errorInvalidUnary(node, operator, error, arg);
116 } 127 }
117 128
(...skipping 2980 matching lines...) Expand 10 before | Expand all | Expand 10 after
3098 super.visitConstantInvoke(node, constant, arguments, callStructure, arg); 3109 super.visitConstantInvoke(node, constant, arguments, callStructure, arg);
3099 } 3110 }
3100 3111
3101 @override 3112 @override
3102 previsitDeferredAccess( 3113 previsitDeferredAccess(
3103 Send node, 3114 Send node,
3104 PrefixElement prefix, 3115 PrefixElement prefix,
3105 arg) { 3116 arg) {
3106 visits.add(new Visit(VisitKind.PREVISIT_DEFERRED_ACCESS, element: prefix)); 3117 visits.add(new Visit(VisitKind.PREVISIT_DEFERRED_ACCESS, element: prefix));
3107 } 3118 }
3119
3120 @override
3121 visitClassTypeLiteralSetIfNull(
3122 Send node,
3123 ConstantExpression constant,
3124 Node rhs,
3125 arg) {
3126 visits.add(new Visit(VisitKind.VISIT_CLASS_TYPE_LITERAL_SET_IF_NULL,
3127 constant: constant.getText(), rhs: rhs));
3128 super.visitClassTypeLiteralSetIfNull(node, constant, rhs, arg);
3129 }
3130
3131 @override
3132 visitDynamicPropertySetIfNull(
3133 Send node,
3134 Node receiver,
3135 Name name,
3136 Node rhs,
3137 arg) {
3138 visits.add(new Visit(VisitKind.VISIT_DYNAMIC_PROPERTY_SET_IF_NULL,
3139 receiver: receiver, name: name, rhs: rhs));
3140 super.visitDynamicPropertySetIfNull(node, receiver, name, rhs, arg);
3141 }
3142
3143 @override
3144 visitDynamicTypeLiteralSetIfNull(
3145 Send node,
3146 ConstantExpression constant,
3147 Node rhs,
3148 arg) {
3149 visits.add(new Visit(VisitKind.VISIT_DYNAMIC_TYPE_LITERAL_SET_IF_NULL,
3150 constant: constant.getText(), rhs: rhs));
3151 super.visitDynamicTypeLiteralSetIfNull(node, constant, rhs, arg);
3152 }
3153
3154 @override
3155 visitFinalLocalVariableSetIfNull(
3156 Send node,
3157 LocalVariableElement variable,
3158 Node rhs,
3159 arg) {
3160 visits.add(new Visit(VisitKind.VISIT_FINAL_LOCAL_VARIABLE_SET_IF_NULL,
3161 element: variable, rhs: rhs));
3162 super.visitFinalLocalVariableSetIfNull(node, variable, rhs, arg);
3163 }
3164
3165 @override
3166 visitFinalParameterSetIfNull(
3167 Send node,
3168 ParameterElement parameter,
3169 Node rhs,
3170 arg) {
3171 visits.add(new Visit(VisitKind.VISIT_FINAL_PARAMETER_SET_IF_NULL,
3172 element: parameter, rhs: rhs));
3173 super.visitFinalParameterSetIfNull(node, parameter, rhs, arg);
3174 }
3175
3176 @override
3177 visitFinalStaticFieldSetIfNull(
3178 Send node,
3179 FieldElement field,
3180 Node rhs,
3181 arg) {
3182 visits.add(new Visit(VisitKind.VISIT_STATIC_FINAL_FIELD_SET_IF_NULL,
3183 element: field, rhs: rhs));
3184 super.visitFinalStaticFieldSetIfNull(node, field, rhs, arg);
3185 }
3186
3187 @override
3188 visitFinalSuperFieldSetIfNull(
3189 Send node,
3190 FieldElement field,
3191 Node rhs,
3192 arg) {
3193 visits.add(new Visit(VisitKind.VISIT_SUPER_FINAL_FIELD_SET_IF_NULL,
3194 element: field, rhs: rhs));
3195 super.visitFinalSuperFieldSetIfNull(node, field, rhs, arg);
3196 }
3197
3198 @override
3199 visitFinalTopLevelFieldSetIfNull(
3200 Send node,
3201 FieldElement field,
3202 Node rhs,
3203 arg) {
3204 visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FINAL_FIELD_SET_IF_NULL,
3205 element: field, rhs: rhs));
3206 super.visitFinalTopLevelFieldSetIfNull(node, field, rhs, arg);
3207 }
3208
3209 @override
3210 visitIfNotNullDynamicPropertySetIfNull(
3211 Send node,
3212 Node receiver,
3213 Name name,
3214 Node rhs,
3215 arg) {
3216 visits.add(new Visit(
3217 VisitKind.VISIT_IF_NOT_NULL_DYNAMIC_PROPERTY_SET_IF_NULL,
3218 receiver: receiver, name: name, rhs: rhs));
3219 super.visitIfNotNullDynamicPropertySetIfNull(
3220 node, receiver, name, rhs, arg);
3221 }
3222
3223 @override
3224 visitLocalFunctionSetIfNull(
3225 Send node,
3226 LocalFunctionElement function,
3227 Node rhs,
3228 arg) {
3229 visits.add(new Visit(VisitKind.VISIT_LOCAL_FUNCTION_SET_IF_NULL,
3230 element: function, rhs: rhs));
3231 super.visitLocalFunctionSetIfNull(node, function, rhs, arg);
3232 }
3233
3234 @override
3235 visitLocalVariableSetIfNull(
3236 Send node,
3237 LocalVariableElement variable,
3238 Node rhs,
3239 arg) {
3240 visits.add(new Visit(VisitKind.VISIT_LOCAL_VARIABLE_SET_IF_NULL,
3241 element: variable, rhs: rhs));
3242 super.visitLocalVariableSetIfNull(node, variable, rhs, arg);
3243 }
3244
3245 @override
3246 visitParameterSetIfNull(
3247 Send node,
3248 ParameterElement parameter,
3249 Node rhs,
3250 arg) {
3251 visits.add(new Visit(VisitKind.VISIT_PARAMETER_SET_IF_NULL,
3252 element: parameter, rhs: rhs));
3253 super.visitParameterSetIfNull(node, parameter, rhs, arg);
3254 }
3255
3256 @override
3257 visitStaticFieldSetIfNull(
3258 Send node,
3259 FieldElement field,
3260 Node rhs,
3261 arg) {
3262 visits.add(new Visit(VisitKind.VISIT_STATIC_FIELD_SET_IF_NULL,
3263 element: field, rhs: rhs));
3264 super.visitStaticFieldSetIfNull(node, field, rhs, arg);
3265 }
3266
3267 @override
3268 visitStaticGetterSetterSetIfNull(
3269 Send node,
3270 FunctionElement getter,
3271 FunctionElement setter,
3272 Node rhs,
3273 arg) {
3274 visits.add(new Visit(VisitKind.VISIT_STATIC_GETTER_SETTER_SET_IF_NULL,
3275 getter: getter, setter: setter, rhs: rhs));
3276 super.visitStaticGetterSetterSetIfNull(node, getter, setter, rhs, arg);
3277 }
3278
3279 @override
3280 visitStaticMethodSetIfNull(
3281 Send node,
3282 FunctionElement method,
3283 Node rhs,
3284 arg) {
3285 visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SET_IF_NULL,
3286 element: method, rhs: rhs));
3287 super.visitStaticMethodSetIfNull(node, method, rhs, arg);
3288 }
3289
3290 @override
3291 visitStaticMethodSetterSetIfNull(
3292 Send node,
3293 MethodElement method,
3294 MethodElement setter,
3295 Node rhs,
3296 arg) {
3297 visits.add(new Visit(VisitKind.VISIT_STATIC_METHOD_SETTER_SET_IF_NULL,
3298 getter: method, setter: setter, rhs: rhs));
3299 super.visitStaticMethodSetterSetIfNull(node, method, setter, rhs, arg);
3300 }
3301
3302 @override
3303 visitSuperFieldFieldSetIfNull(
3304 Send node,
3305 FieldElement readField,
3306 FieldElement writtenField,
3307 Node rhs,
3308 arg) {
3309 visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_FIELD_SET_IF_NULL,
3310 getter: readField, setter: writtenField, rhs: rhs));
3311 super.visitSuperFieldFieldSetIfNull(
3312 node, readField, writtenField, rhs, arg);
3313 }
3314
3315 @override
3316 visitSuperFieldSetIfNull(
3317 Send node,
3318 FieldElement field,
3319 Node rhs,
3320 arg) {
3321 visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SET_IF_NULL,
3322 element: field, rhs: rhs));
3323 super.visitSuperFieldSetIfNull(node, field, rhs, arg);
3324 }
3325
3326 @override
3327 visitSuperFieldSetterSetIfNull(
3328 Send node,
3329 FieldElement field,
3330 FunctionElement setter,
3331 Node rhs,
3332 arg) {
3333 visits.add(new Visit(VisitKind.VISIT_SUPER_FIELD_SETTER_SET_IF_NULL,
3334 getter: field, setter: setter, rhs: rhs));
3335 super.visitSuperFieldSetterSetIfNull(node, field, setter, rhs, arg);
3336 }
3337
3338 @override
3339 visitSuperGetterFieldSetIfNull(
3340 Send node,
3341 FunctionElement getter,
3342 FieldElement field,
3343 Node rhs,
3344 arg) {
3345 visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_FIELD_SET_IF_NULL,
3346 getter: getter, setter: field, rhs: rhs));
3347 super.visitSuperGetterFieldSetIfNull(node, getter, field, rhs, arg);
3348 }
3349
3350 @override
3351 visitSuperGetterSetterSetIfNull(
3352 Send node,
3353 FunctionElement getter,
3354 FunctionElement setter,
3355 Node rhs,
3356 arg) {
3357 visits.add(new Visit(VisitKind.VISIT_SUPER_GETTER_SETTER_SET_IF_NULL,
3358 getter: getter, setter: setter, rhs: rhs));
3359 super.visitSuperGetterSetterSetIfNull(node, getter, setter, rhs, arg);
3360 }
3361
3362 @override
3363 visitSuperMethodSetIfNull(
3364 Send node,
3365 FunctionElement method,
3366 Node rhs,
3367 arg) {
3368 visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SET_IF_NULL,
3369 element: method, rhs: rhs));
3370 super.visitSuperMethodSetIfNull(node, method, rhs, arg);
3371 }
3372
3373 @override
3374 visitSuperMethodSetterSetIfNull(
3375 Send node,
3376 FunctionElement method,
3377 FunctionElement setter,
3378 Node rhs,
3379 arg) {
3380 visits.add(new Visit(VisitKind.VISIT_SUPER_METHOD_SETTER_SET_IF_NULL,
3381 getter: method, setter: setter, rhs: rhs));
3382 super.visitSuperMethodSetterSetIfNull(node, method, setter, rhs, arg);
3383 }
3384
3385 @override
3386 visitThisPropertySetIfNull(
3387 Send node,
3388 Name name,
3389 Node rhs,
3390 arg) {
3391 visits.add(new Visit(VisitKind.VISIT_THIS_PROPERTY_SET_IF_NULL,
3392 name: name, rhs: rhs));
3393 super.visitThisPropertySetIfNull(node, name, rhs, arg);
3394 }
3395
3396 @override
3397 visitTopLevelFieldSetIfNull(
3398 Send node,
3399 FieldElement field,
3400 Node rhs,
3401 arg) {
3402 visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_FIELD_SET_IF_NULL,
3403 element: field, rhs: rhs));
3404 super.visitTopLevelFieldSetIfNull(node, field, rhs, arg);
3405 }
3406
3407 @override
3408 visitTopLevelGetterSetterSetIfNull(
3409 Send node,
3410 FunctionElement getter,
3411 FunctionElement setter,
3412 Node rhs,
3413 arg) {
3414 visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_GETTER_SETTER_SET_IF_NULL,
3415 getter: getter, setter: setter, rhs: rhs));
3416 super.visitTopLevelGetterSetterSetIfNull(node, getter, setter, rhs, arg);
3417 }
3418
3419 @override
3420 visitTopLevelMethodSetIfNull(
3421 Send node,
3422 FunctionElement method,
3423 Node rhs,
3424 arg) {
3425 visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SET_IF_NULL,
3426 element: method, rhs: rhs));
3427 super.visitTopLevelMethodSetIfNull(node, method, rhs, arg);
3428 }
3429
3430 @override
3431 visitTopLevelMethodSetterSetIfNull(
3432 Send node,
3433 FunctionElement method,
3434 FunctionElement setter,
3435 Node rhs,
3436 arg) {
3437 visits.add(new Visit(VisitKind.VISIT_TOP_LEVEL_METHOD_SETTER_SET_IF_NULL,
3438 getter: method, setter: setter, rhs: rhs));
3439 super.visitTopLevelMethodSetterSetIfNull(node, method, setter, rhs, arg);
3440 }
3441
3442 @override
3443 visitTypeVariableTypeLiteralSetIfNull(
3444 Send node,
3445 TypeVariableElement element,
3446 Node rhs,
3447 arg) {
3448 visits.add(new Visit(VisitKind.VISIT_TYPE_VARIABLE_TYPE_LITERAL_SET_IF_NULL,
3449 element: element, rhs: rhs));
3450 super.visitTypeVariableTypeLiteralSetIfNull(node, element, rhs, arg);
3451 }
3452
3453 @override
3454 visitTypedefTypeLiteralSetIfNull(
3455 Send node,
3456 ConstantExpression constant,
3457 Node rhs,
3458 arg) {
3459 visits.add(new Visit(VisitKind.VISIT_TYPEDEF_TYPE_LITERAL_SET_IF_NULL,
3460 constant: constant.getText(), rhs: rhs));
3461 super.visitTypedefTypeLiteralSetIfNull(node, constant, rhs, arg);
3462 }
3463
3464 @override
3465 visitUnresolvedSetIfNull(
3466 Send node,
3467 Element element,
3468 Node rhs,
3469 arg) {
3470 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SET_IF_NULL,
3471 name: element.name, rhs: rhs));
3472 super.visitUnresolvedSetIfNull(node, element, rhs, arg);
3473 }
3474
3475 @override
3476 visitUnresolvedStaticGetterSetIfNull(
3477 Send node,
3478 Element element,
3479 MethodElement setter,
3480 Node rhs,
3481 arg) {
3482 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_GETTER_SET_IF_NULL,
3483 setter: setter, rhs: rhs));
3484 super.visitUnresolvedStaticGetterSetIfNull(node, element, setter, rhs, arg);
3485 }
3486
3487 @override
3488 visitUnresolvedStaticSetterSetIfNull(
3489 Send node,
3490 MethodElement getter,
3491 Element element,
3492 Node rhs,
3493 arg) {
3494 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_STATIC_SETTER_SET_IF_NULL,
3495 getter: getter, rhs: rhs));
3496 super.visitUnresolvedStaticSetterSetIfNull(node, getter, element, rhs, arg);
3497 }
3498
3499 @override
3500 visitUnresolvedSuperGetterSetIfNull(
3501 Send node,
3502 Element element,
3503 MethodElement setter,
3504 Node rhs,
3505 arg) {
3506 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_GETTER_SET_IF_NULL,
3507 setter: setter, rhs: rhs));
3508 super.visitUnresolvedSuperGetterSetIfNull(node, element, setter, rhs, arg);
3509 }
3510
3511 @override
3512 visitUnresolvedSuperSetIfNull(
3513 Send node,
3514 Element element,
3515 Node rhs,
3516 arg) {
3517 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SET_IF_NULL,
3518 name: element.name, rhs: rhs));
3519 super.visitUnresolvedSuperSetIfNull(node, element, rhs, arg);
3520 }
3521
3522 @override
3523 visitUnresolvedSuperSetterSetIfNull(
3524 Send node,
3525 MethodElement getter,
3526 Element element,
3527 Node rhs,
3528 arg) {
3529 visits.add(new Visit(VisitKind.VISIT_UNRESOLVED_SUPER_SETTER_SET_IF_NULL,
3530 getter: getter, rhs: rhs));
3531 super.visitUnresolvedSuperSetterSetIfNull(node, getter, element, rhs, arg);
3532 }
3533
3534 @override
3535 visitUnresolvedTopLevelGetterSetIfNull(
3536 Send node,
3537 Element element,
3538 MethodElement setter,
3539 Node rhs,
3540 arg) {
3541 visits.add(new Visit(
3542 VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_GETTER_SET_IF_NULL,
3543 setter: setter, rhs: rhs));
3544 super.visitUnresolvedTopLevelGetterSetIfNull(
3545 node, element, setter, rhs, arg);
3546 }
3547
3548 @override
3549 visitUnresolvedTopLevelSetterSetIfNull(
3550 Send node,
3551 MethodElement getter,
3552 Element element,
3553 Node rhs,
3554 arg) {
3555 visits.add(new Visit(
3556 VisitKind.VISIT_UNRESOLVED_TOP_LEVEL_SETTER_SET_IF_NULL,
3557 getter: getter, rhs: rhs));
3558 super.visitUnresolvedTopLevelSetterSetIfNull(
3559 node, getter, element, rhs, arg);
3560 }
3108 } 3561 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js/semantic_visitor_test_send_data.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698