| OLD | NEW |
| 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, 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 /// This file declares a "shadow hierarchy" of concrete classes which extend | 5 /// This file declares a "shadow hierarchy" of concrete classes which extend |
| 6 /// the kernel class hierarchy, adding methods and fields needed by the | 6 /// the kernel class hierarchy, adding methods and fields needed by the |
| 7 /// BodyBuilder. | 7 /// BodyBuilder. |
| 8 /// | 8 /// |
| 9 /// Instances of these classes may be created using the factory methods in | 9 /// Instances of these classes may be created using the factory methods in |
| 10 /// `ast_factory.dart`. | 10 /// `ast_factory.dart`. |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 KernelTypeInferrer inferrer, DartType typeContext, bool typeNeeded) { | 83 KernelTypeInferrer inferrer, DartType typeContext, bool typeNeeded) { |
| 84 typeNeeded = | 84 typeNeeded = |
| 85 inferrer.listener.asExpressionEnter(this, typeContext) || typeNeeded; | 85 inferrer.listener.asExpressionEnter(this, typeContext) || typeNeeded; |
| 86 inferrer.inferExpression(operand, null, false); | 86 inferrer.inferExpression(operand, null, false); |
| 87 var inferredType = typeNeeded ? type : null; | 87 var inferredType = typeNeeded ? type : null; |
| 88 inferrer.listener.asExpressionExit(this, inferredType); | 88 inferrer.listener.asExpressionExit(this, inferredType); |
| 89 return inferredType; | 89 return inferredType; |
| 90 } | 90 } |
| 91 } | 91 } |
| 92 | 92 |
| 93 /// Concrete shadow object representing an assert initializer in kernel form. |
| 94 class KernelAssertInitializer extends LocalInitializer |
| 95 implements KernelInitializer { |
| 96 /// The assert statement performing the check |
| 97 AssertStatement _statement; |
| 98 |
| 99 KernelAssertInitializer(VariableDeclaration variable, this._statement) |
| 100 : super(variable); |
| 101 |
| 102 @override |
| 103 void _inferInitializer(KernelTypeInferrer inferrer) { |
| 104 inferrer.listener.assertInitializerEnter(this); |
| 105 inferrer.inferStatement(_statement); |
| 106 inferrer.listener.assertInitializerExit(this); |
| 107 } |
| 108 } |
| 109 |
| 93 /// Concrete shadow object representing an assertion statement in kernel form. | 110 /// Concrete shadow object representing an assertion statement in kernel form. |
| 94 class KernelAssertStatement extends AssertStatement implements KernelStatement { | 111 class KernelAssertStatement extends AssertStatement implements KernelStatement { |
| 95 KernelAssertStatement(Expression condition, | 112 KernelAssertStatement(Expression condition, |
| 96 {Expression message, int conditionStartOffset, int conditionEndOffset}) | 113 {Expression message, int conditionStartOffset, int conditionEndOffset}) |
| 97 : super(condition, | 114 : super(condition, |
| 98 message: message, | 115 message: message, |
| 99 conditionStartOffset: conditionStartOffset, | 116 conditionStartOffset: conditionStartOffset, |
| 100 conditionEndOffset: conditionEndOffset); | 117 conditionEndOffset: conditionEndOffset); |
| 101 | 118 |
| 102 @override | 119 @override |
| (...skipping 2341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2444 accept(v) => unsupported("accept", -1, null); | 2461 accept(v) => unsupported("accept", -1, null); |
| 2445 | 2462 |
| 2446 accept1(v, arg) => unsupported("accept1", -1, null); | 2463 accept1(v, arg) => unsupported("accept1", -1, null); |
| 2447 | 2464 |
| 2448 getStaticType(types) => unsupported("getStaticType", -1, null); | 2465 getStaticType(types) => unsupported("getStaticType", -1, null); |
| 2449 | 2466 |
| 2450 transformChildren(v) => unsupported("transformChildren", -1, null); | 2467 transformChildren(v) => unsupported("transformChildren", -1, null); |
| 2451 | 2468 |
| 2452 visitChildren(v) => unsupported("visitChildren", -1, null); | 2469 visitChildren(v) => unsupported("visitChildren", -1, null); |
| 2453 } | 2470 } |
| OLD | NEW |