| 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 backend_ast_emitter; | 5 library backend_ast_emitter; |
| 6 | 6 |
| 7 import '../tree_ir/tree_ir_nodes.dart' as tree; | 7 import '../tree_ir/tree_ir_nodes.dart' as tree; |
| 8 import 'backend_ast_nodes.dart'; | 8 import 'backend_ast_nodes.dart'; |
| 9 import '../constants/expressions.dart'; | 9 import '../constants/expressions.dart'; |
| 10 import '../constants/values.dart'; | 10 import '../constants/values.dart'; |
| (...skipping 951 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 962 Initializer visitSuperInitializer(tree.SuperInitializer node, | 962 Initializer visitSuperInitializer(tree.SuperInitializer node, |
| 963 BuilderContext<Statement> context) { | 963 BuilderContext<Statement> context) { |
| 964 List<Argument> arguments = node.arguments.map((tree.Statement argument) { | 964 List<Argument> arguments = node.arguments.map((tree.Statement argument) { |
| 965 return ensureExpression(buildInInitializerContext(argument, context)); | 965 return ensureExpression(buildInInitializerContext(argument, context)); |
| 966 }).toList(); | 966 }).toList(); |
| 967 return new SuperInitializer(node.target, | 967 return new SuperInitializer(node.target, |
| 968 emitArguments(arguments, node.selector)); | 968 emitArguments(arguments, node.selector)); |
| 969 } | 969 } |
| 970 | 970 |
| 971 @override | 971 @override |
| 972 Expression visitGetStatic(tree.GetStatic node, |
| 973 BuilderContext<Statement> context) { |
| 974 return new Identifier(node.element.name)..element = node.element; |
| 975 } |
| 976 |
| 977 @override |
| 978 Expression visitSetStatic(tree.SetStatic node, |
| 979 BuilderContext<Statement> context) { |
| 980 Expression target = |
| 981 new Identifier(node.element.name)..element = node.element; |
| 982 Expression value = visitExpression(node.value, context); |
| 983 return makeAssignment(target, value); |
| 984 } |
| 985 |
| 986 @override |
| 972 Expression visitTypeExpression(tree.TypeExpression node, arg) { | 987 Expression visitTypeExpression(tree.TypeExpression node, arg) { |
| 973 throw '$node not supported by dart backend'; | 988 throw '$node not supported by dart backend'; |
| 974 } | 989 } |
| 975 | 990 |
| 976 @override | 991 @override |
| 977 visitGetField(tree.GetField node, arg) => errorUnsupportedNode(node); | 992 visitGetField(tree.GetField node, arg) => errorUnsupportedNode(node); |
| 978 | 993 |
| 979 @override | 994 @override |
| 980 visitSetField(tree.SetField node, arg) => errorUnsupportedNode(node); | 995 visitSetField(tree.SetField node, arg) => errorUnsupportedNode(node); |
| 981 | 996 |
| (...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1370 : super(name, ElementKind.VARIABLE, enclosingElement, variables, null); | 1385 : super(name, ElementKind.VARIABLE, enclosingElement, variables, null); |
| 1371 | 1386 |
| 1372 ExecutableElement get executableContext => enclosingElement; | 1387 ExecutableElement get executableContext => enclosingElement; |
| 1373 | 1388 |
| 1374 ExecutableElement get memberContext => executableContext.memberContext; | 1389 ExecutableElement get memberContext => executableContext.memberContext; |
| 1375 | 1390 |
| 1376 bool get isLocal => true; | 1391 bool get isLocal => true; |
| 1377 | 1392 |
| 1378 LibraryElement get implementationLibrary => enclosingElement.library; | 1393 LibraryElement get implementationLibrary => enclosingElement.library; |
| 1379 } | 1394 } |
| OLD | NEW |