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

Side by Side Diff: pkg/compiler/lib/src/constants/expressions.dart

Issue 1927963002: Support compilation of Hello World (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Fixes Created 4 years, 7 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
OLDNEW
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 dart2js.constants.expressions; 5 library dart2js.constants.expressions;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../constants/constant_system.dart'; 8 import '../constants/constant_system.dart';
9 import '../core_types.dart'; 9 import '../core_types.dart';
10 import '../dart_types.dart'; 10 import '../dart_types.dart';
(...skipping 662 matching lines...) Expand 10 before | Expand all | Expand 10 after
673 int _computeHashCode() => 13 * name.hashCode; 673 int _computeHashCode() => 13 * name.hashCode;
674 674
675 @override 675 @override
676 bool _equals(SymbolConstantExpression other) { 676 bool _equals(SymbolConstantExpression other) {
677 return name == other.name; 677 return name == other.name;
678 } 678 }
679 679
680 @override 680 @override
681 ConstantValue evaluate( 681 ConstantValue evaluate(
682 Environment environment, ConstantSystem constantSystem) { 682 Environment environment, ConstantSystem constantSystem) {
683 // TODO(johnniwinther): Implement this. 683 return constantSystem.createSymbol(environment.compiler, name);
684 throw new UnsupportedError('SymbolConstantExpression.evaluate');
685 } 684 }
686 685
687 @override 686 @override
688 DartType getKnownType(CoreTypes coreTypes) => coreTypes.symbolType; 687 DartType getKnownType(CoreTypes coreTypes) => coreTypes.symbolType;
689 } 688 }
690 689
691 /// Type literal. 690 /// Type literal.
692 class TypeConstantExpression extends ConstantExpression { 691 class TypeConstantExpression extends ConstantExpression {
693 /// Either [DynamicType] or a raw [GenericType]. 692 /// Either [DynamicType] or a raw [GenericType].
694 final DartType type; 693 final DartType type;
(...skipping 736 matching lines...) Expand 10 before | Expand all | Expand 10 after
1431 @override 1430 @override
1432 void _createStructuredText(StringBuffer sb) { 1431 void _createStructuredText(StringBuffer sb) {
1433 sb.write('Deferred(prefix=$prefix,expression='); 1432 sb.write('Deferred(prefix=$prefix,expression=');
1434 expression._createStructuredText(sb); 1433 expression._createStructuredText(sb);
1435 sb.write(')'); 1434 sb.write(')');
1436 } 1435 }
1437 1436
1438 @override 1437 @override
1439 ConstantValue evaluate( 1438 ConstantValue evaluate(
1440 Environment environment, ConstantSystem constantSystem) { 1439 Environment environment, ConstantSystem constantSystem) {
1441 return expression.evaluate(environment, constantSystem); 1440 return new DeferredConstantValue(
1441 expression.evaluate(environment, constantSystem),
1442 prefix);
1442 } 1443 }
1443 1444
1444 @override 1445 @override
1445 int _computeHashCode() { 1446 int _computeHashCode() {
1446 return 13 * expression.hashCode; 1447 return 13 * expression.hashCode;
1447 } 1448 }
1448 1449
1449 ConstantExpression apply(NormalizedArguments arguments) { 1450 ConstantExpression apply(NormalizedArguments arguments) {
1450 return new DeferredConstantExpression(expression.apply(arguments), prefix); 1451 return new DeferredConstantExpression(expression.apply(arguments), prefix);
1451 } 1452 }
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after
1760 visit(exp.name); 1761 visit(exp.name);
1761 if (exp.defaultValue != null) { 1762 if (exp.defaultValue != null) {
1762 sb.write(', defaultValue: '); 1763 sb.write(', defaultValue: ');
1763 visit(exp.defaultValue); 1764 visit(exp.defaultValue);
1764 } 1765 }
1765 sb.write(')'); 1766 sb.write(')');
1766 } 1767 }
1767 1768
1768 String toString() => sb.toString(); 1769 String toString() => sb.toString();
1769 } 1770 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/constants/constant_system.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698