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

Unified Diff: lib/compiler/implementation/js/precedence.dart

Issue 10825180: Add JavaScript AST. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Cosmetic changes (comments). Created 8 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: lib/compiler/implementation/js/precedence.dart
diff --git a/lib/compiler/implementation/js/precedence.dart b/lib/compiler/implementation/js/precedence.dart
new file mode 100644
index 0000000000000000000000000000000000000000..42a085ec921ceb00d5099f0d356aa9b15b92af11
--- /dev/null
+++ b/lib/compiler/implementation/js/precedence.dart
@@ -0,0 +1,25 @@
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+#library("precedence");
+
+final EXPRESSION = 0;
+final ASSIGNMENT = EXPRESSION + 1;
+final LOGICAL_OR = ASSIGNMENT + 1;
+final LOGICAL_AND = LOGICAL_OR + 1;
+final BIT_OR = LOGICAL_AND + 1;
+final BIT_XOR = BIT_OR + 1;
+final BIT_AND = BIT_XOR + 1;
+final EQUALITY = BIT_AND + 1;
+final RELATIONAL = EQUALITY + 1;
+final SHIFT = RELATIONAL + 1;
+final ADDITIVE = SHIFT + 1;
+final MULTIPLICATIVE = ADDITIVE + 1;
+final UNARY = MULTIPLICATIVE + 1;
+final LEFT_HAND_SIDE = UNARY + 1;
+// We merge new, call and member expressions.
+// This means that we have to emit parenthesis for 'new's. For example `new X;`
+// should be printed as `new X();`. This simplifies the requirements.
+final CALL = LEFT_HAND_SIDE;
+final PRIMARY = CALL + 1;

Powered by Google App Engine
This is Rietveld 408576698