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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/js/nodes.dart

Issue 11360228: Simplify runtime type support. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 part of js; 5 part of js;
6 6
7 abstract class NodeVisitor<T> { 7 abstract class NodeVisitor<T> {
8 T visitProgram(Program node); 8 T visitProgram(Program node);
9 9
10 T visitBlock(Block node); 10 T visitBlock(Block node);
(...skipping 695 matching lines...) Expand 10 before | Expand all | Expand 10 after
706 int get precedenceLevel => CALL; 706 int get precedenceLevel => CALL;
707 } 707 }
708 708
709 class PropertyAccess extends Expression { 709 class PropertyAccess extends Expression {
710 final Expression receiver; 710 final Expression receiver;
711 final Expression selector; 711 final Expression selector;
712 712
713 PropertyAccess(this.receiver, this.selector); 713 PropertyAccess(this.receiver, this.selector);
714 PropertyAccess.field(this.receiver, String fieldName) 714 PropertyAccess.field(this.receiver, String fieldName)
715 : selector = new LiteralString("'$fieldName'"); 715 : selector = new LiteralString("'$fieldName'");
716 PropertyAccess.indexed(this.receiver, int index)
717 : selector = new LiteralNumber('$index');
716 718
717 accept(NodeVisitor visitor) => visitor.visitAccess(this); 719 accept(NodeVisitor visitor) => visitor.visitAccess(this);
718 720
719 void visitChildren(NodeVisitor visitor) { 721 void visitChildren(NodeVisitor visitor) {
720 receiver.accept(visitor); 722 receiver.accept(visitor);
721 selector.accept(visitor); 723 selector.accept(visitor);
722 } 724 }
723 725
724 int get precedenceLevel => CALL; 726 int get precedenceLevel => CALL;
725 } 727 }
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
832 /** Contains the pattern and the flags.*/ 834 /** Contains the pattern and the flags.*/
833 String pattern; 835 String pattern;
834 836
835 RegExpLiteral(this.pattern); 837 RegExpLiteral(this.pattern);
836 838
837 accept(NodeVisitor visitor) => visitor.visitRegExpLiteral(this); 839 accept(NodeVisitor visitor) => visitor.visitRegExpLiteral(this);
838 void visitChildren(NodeVisitor visitor) {} 840 void visitChildren(NodeVisitor visitor) {}
839 841
840 int get precedenceLevel => PRIMARY; 842 int get precedenceLevel => PRIMARY;
841 } 843 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698