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

Side by Side Diff: pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart

Issue 1916053003: Add toStructuredText to ConstantExpression and align method names with ConstantValue (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: dartfmt 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.ir_nodes_sexpr; 5 library dart2js.ir_nodes_sexpr;
6 6
7 import '../constants/values.dart'; 7 import '../constants/values.dart';
8 import '../util/util.dart'; 8 import '../util/util.dart';
9 import 'cps_ir_nodes.dart'; 9 import 'cps_ir_nodes.dart';
10 import '../universe/call_structure.dart' show CallStructure; 10 import '../universe/call_structure.dart' show CallStructure;
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after
457 } 457 }
458 458
459 class ConstantStringifier extends ConstantValueVisitor<String, Null> { 459 class ConstantStringifier extends ConstantValueVisitor<String, Null> {
460 // Some of these methods are unimplemented because we haven't had a need 460 // Some of these methods are unimplemented because we haven't had a need
461 // to print such constants. When printing is implemented, the corresponding 461 // to print such constants. When printing is implemented, the corresponding
462 // parsing support should be added to SExpressionUnstringifier.parseConstant 462 // parsing support should be added to SExpressionUnstringifier.parseConstant
463 // in the dart2js tests (currently in the file 463 // in the dart2js tests (currently in the file
464 // tests/compiler/dart2js/backend_dart/sexpr_unstringifier.dart). 464 // tests/compiler/dart2js/backend_dart/sexpr_unstringifier.dart).
465 465
466 String _failWith(ConstantValue constant) { 466 String _failWith(ConstantValue constant) {
467 throw 'Stringification not supported for ${constant.toStructuredString()}'; 467 throw 'Stringification not supported for ${constant.toStructuredText()}';
468 } 468 }
469 469
470 String visitFunction(FunctionConstantValue constant, _) { 470 String visitFunction(FunctionConstantValue constant, _) {
471 return '(Function "${constant.unparse()}")'; 471 return '(Function "${constant.toDartText()}")';
472 } 472 }
473 473
474 String visitNull(NullConstantValue constant, _) { 474 String visitNull(NullConstantValue constant, _) {
475 return '(Null)'; 475 return '(Null)';
476 } 476 }
477 477
478 String visitInt(IntConstantValue constant, _) { 478 String visitInt(IntConstantValue constant, _) {
479 return '(Int ${constant.unparse()})'; 479 return '(Int ${constant.toDartText()})';
480 } 480 }
481 481
482 String visitDouble(DoubleConstantValue constant, _) { 482 String visitDouble(DoubleConstantValue constant, _) {
483 return '(Double ${constant.unparse()})'; 483 return '(Double ${constant.toDartText()})';
484 } 484 }
485 485
486 String visitBool(BoolConstantValue constant, _) { 486 String visitBool(BoolConstantValue constant, _) {
487 return '(Bool ${constant.unparse()})'; 487 return '(Bool ${constant.toDartText()})';
488 } 488 }
489 489
490 String visitString(StringConstantValue constant, _) { 490 String visitString(StringConstantValue constant, _) {
491 return '(String ${constant.unparse()})'; 491 return '(String ${constant.toDartText()})';
492 } 492 }
493 493
494 String visitList(ListConstantValue constant, _) { 494 String visitList(ListConstantValue constant, _) {
495 String entries = 495 String entries =
496 constant.entries.map((entry) => entry.accept(this, _)).join(' '); 496 constant.entries.map((entry) => entry.accept(this, _)).join(' ');
497 return '(List $entries)'; 497 return '(List $entries)';
498 } 498 }
499 499
500 String visitMap(MapConstantValue constant, _) { 500 String visitMap(MapConstantValue constant, _) {
501 List<String> elements = <String>[]; 501 List<String> elements = <String>[];
502 for (int i = 0; i < constant.keys.length; ++i) { 502 for (int i = 0; i < constant.keys.length; ++i) {
503 ConstantValue key = constant.keys[i]; 503 ConstantValue key = constant.keys[i];
504 ConstantValue value = constant.values[i]; 504 ConstantValue value = constant.values[i];
505 elements.add('(${key.accept(this, _)} . ${value.accept(this, _)})'); 505 elements.add('(${key.accept(this, _)} . ${value.accept(this, _)})');
506 } 506 }
507 return '(Map (${elements.join(' ')}))'; 507 return '(Map (${elements.join(' ')}))';
508 } 508 }
509 509
510 String visitConstructed(ConstructedConstantValue constant, _) { 510 String visitConstructed(ConstructedConstantValue constant, _) {
511 return '(Constructed "${constant.unparse()}")'; 511 return '(Constructed "${constant.toDartText()}")';
512 } 512 }
513 513
514 String visitType(TypeConstantValue constant, _) { 514 String visitType(TypeConstantValue constant, _) {
515 return '(Type "${constant.representedType}")'; 515 return '(Type "${constant.representedType}")';
516 } 516 }
517 517
518 String visitInterceptor(InterceptorConstantValue constant, _) { 518 String visitInterceptor(InterceptorConstantValue constant, _) {
519 return '(Interceptor "${constant.unparse()}")'; 519 return '(Interceptor "${constant.toDartText()}")';
520 } 520 }
521 521
522 String visitSynthetic(SyntheticConstantValue constant, _) { 522 String visitSynthetic(SyntheticConstantValue constant, _) {
523 return '(Synthetic "${constant.unparse()}")'; 523 return '(Synthetic "${constant.toDartText()}")';
524 } 524 }
525 525
526 String visitDeferred(DeferredConstantValue constant, _) { 526 String visitDeferred(DeferredConstantValue constant, _) {
527 return _failWith(constant); 527 return _failWith(constant);
528 } 528 }
529 } 529 }
530 530
531 class _Namer { 531 class _Namer {
532 final Map<Node, String> _names = <Node, String>{}; 532 final Map<Node, String> _names = <Node, String>{};
533 int _valueCounter = 0; 533 int _valueCounter = 0;
(...skipping 27 matching lines...) Expand all
561 void setReturnContinuation(Continuation node) { 561 void setReturnContinuation(Continuation node) {
562 assert(!_names.containsKey(node) || _names[node] == 'return'); 562 assert(!_names.containsKey(node) || _names[node] == 'return');
563 _names[node] = 'return'; 563 _names[node] = 'return';
564 } 564 }
565 565
566 String getName(Node node) { 566 String getName(Node node) {
567 if (!_names.containsKey(node)) return 'MISSING_NAME'; 567 if (!_names.containsKey(node)) return 'MISSING_NAME';
568 return _names[node]; 568 return _names[node];
569 } 569 }
570 } 570 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/constants/values.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698