| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 library tree_ir_nodes; | 5 library tree_ir_nodes; |
| 6 | 6 |
| 7 import '../constants/expressions.dart'; | 7 import '../constants/expressions.dart'; |
| 8 import '../constants/values.dart' as values; | 8 import '../constants/values.dart' as values; |
| 9 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType; | 9 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType; |
| 10 import '../elements/elements.dart'; | 10 import '../elements/elements.dart'; |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 accept1(ExpressionVisitor1 visitor, arg) { | 262 accept1(ExpressionVisitor1 visitor, arg) { |
| 263 return visitor.visitConcatenateStrings(this, arg); | 263 return visitor.visitConcatenateStrings(this, arg); |
| 264 } | 264 } |
| 265 } | 265 } |
| 266 | 266 |
| 267 /** | 267 /** |
| 268 * A constant. | 268 * A constant. |
| 269 */ | 269 */ |
| 270 class Constant extends Expression { | 270 class Constant extends Expression { |
| 271 final ConstantExpression expression; | 271 final ConstantExpression expression; |
| 272 final values.ConstantValue value; |
| 272 | 273 |
| 273 Constant(this.expression); | 274 Constant(this.expression, this.value); |
| 274 | 275 |
| 275 Constant.bool(values.BoolConstantValue constantValue) | 276 Constant.bool(values.BoolConstantValue constantValue) |
| 276 : expression = new BoolConstantExpression( | 277 : expression = new BoolConstantExpression( |
| 277 constantValue.primitiveValue, constantValue); | 278 constantValue.primitiveValue), |
| 279 value = constantValue; |
| 278 | 280 |
| 279 accept(ExpressionVisitor visitor) => visitor.visitConstant(this); | 281 accept(ExpressionVisitor visitor) => visitor.visitConstant(this); |
| 280 accept1(ExpressionVisitor1 visitor, arg) => visitor.visitConstant(this, arg); | 282 accept1(ExpressionVisitor1 visitor, arg) => visitor.visitConstant(this, arg); |
| 281 | |
| 282 values.ConstantValue get value => expression.value; | |
| 283 } | 283 } |
| 284 | 284 |
| 285 class This extends Expression { | 285 class This extends Expression { |
| 286 accept(ExpressionVisitor visitor) => visitor.visitThis(this); | 286 accept(ExpressionVisitor visitor) => visitor.visitThis(this); |
| 287 accept1(ExpressionVisitor1 visitor, arg) => visitor.visitThis(this, arg); | 287 accept1(ExpressionVisitor1 visitor, arg) => visitor.visitThis(this, arg); |
| 288 } | 288 } |
| 289 | 289 |
| 290 class LiteralList extends Expression { | 290 class LiteralList extends Expression { |
| 291 final InterfaceType type; | 291 final InterfaceType type; |
| 292 final List<Expression> values; | 292 final List<Expression> values; |
| (...skipping 898 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1191 visitTypeExpression(TypeExpression node) { | 1191 visitTypeExpression(TypeExpression node) { |
| 1192 _replaceExpressions(node.arguments); | 1192 _replaceExpressions(node.arguments); |
| 1193 return node; | 1193 return node; |
| 1194 } | 1194 } |
| 1195 | 1195 |
| 1196 visitCreateInvocationMirror(CreateInvocationMirror node) { | 1196 visitCreateInvocationMirror(CreateInvocationMirror node) { |
| 1197 _replaceExpressions(node.arguments); | 1197 _replaceExpressions(node.arguments); |
| 1198 return node; | 1198 return node; |
| 1199 } | 1199 } |
| 1200 } | 1200 } |
| OLD | NEW |