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

Unified Diff: sdk/lib/_internal/compiler/implementation/constant_system.dart

Issue 694353007: Move dart2js from sdk/lib/_internal/compiler to pkg/compiler (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/constant_system.dart
diff --git a/sdk/lib/_internal/compiler/implementation/constant_system.dart b/sdk/lib/_internal/compiler/implementation/constant_system.dart
deleted file mode 100644
index 36b98d7f0e6d52745d90d792dc8c6e8db2df8df7..0000000000000000000000000000000000000000
--- a/sdk/lib/_internal/compiler/implementation/constant_system.dart
+++ /dev/null
@@ -1,110 +0,0 @@
-// 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.
-
-part of dart2js;
-
-abstract class Operation {
- String get name;
-}
-
-abstract class UnaryOperation extends Operation {
- /** Returns [:null:] if it was unable to fold the operation. */
- ConstantValue fold(ConstantValue constant);
-}
-
-abstract class BinaryOperation extends Operation {
- /** Returns [:null:] if it was unable to fold the operation. */
- ConstantValue fold(ConstantValue left, ConstantValue right);
- apply(left, right);
-}
-
-/**
- * A [ConstantSystem] is responsible for creating constants and folding them.
- */
-abstract class ConstantSystem {
- BinaryOperation get add;
- BinaryOperation get bitAnd;
- UnaryOperation get bitNot;
- BinaryOperation get bitOr;
- BinaryOperation get bitXor;
- BinaryOperation get booleanAnd;
- BinaryOperation get booleanOr;
- BinaryOperation get divide;
- BinaryOperation get equal;
- BinaryOperation get greaterEqual;
- BinaryOperation get greater;
- BinaryOperation get identity;
- BinaryOperation get lessEqual;
- BinaryOperation get less;
- BinaryOperation get modulo;
- BinaryOperation get multiply;
- UnaryOperation get negate;
- UnaryOperation get not;
- BinaryOperation get shiftLeft;
- BinaryOperation get shiftRight;
- BinaryOperation get subtract;
- BinaryOperation get truncatingDivide;
-
- BinaryOperation get codeUnitAt;
-
- const ConstantSystem();
-
- ConstantValue createInt(int i);
- ConstantValue createDouble(double d);
- ConstantValue createString(DartString string);
- ConstantValue createBool(bool value);
- ConstantValue createNull();
- ConstantValue createMap(Compiler compiler,
- InterfaceType type,
- List<ConstantValue> keys,
- List<ConstantValue> values);
-
- // We need to special case the subtype check for JavaScript constant
- // system because an int is a double at runtime.
- bool isSubtype(Compiler compiler, DartType s, DartType t);
-
- /** Returns true if the [constant] is an integer at runtime. */
- bool isInt(ConstantValue constant);
- /** Returns true if the [constant] is a double at runtime. */
- bool isDouble(ConstantValue constant);
- /** Returns true if the [constant] is a string at runtime. */
- bool isString(ConstantValue constant);
- /** Returns true if the [constant] is a boolean at runtime. */
- bool isBool(ConstantValue constant);
- /** Returns true if the [constant] is null at runtime. */
- bool isNull(ConstantValue constant);
-
- UnaryOperation lookupUnary(String operator) {
- switch (operator) {
- case '~': return bitNot;
- case '-': return negate;
- case '!': return not;
- default: return null;
- }
- }
-
- BinaryOperation lookupBinary(String operator) {
- switch (operator) {
- case "+": return add;
- case "-": return subtract;
- case "*": return multiply;
- case "/": return divide;
- case "%": return modulo;
- case "~/": return truncatingDivide;
- case "|": return bitOr;
- case "&": return bitAnd;
- case "^": return bitXor;
- case "||": return booleanOr;
- case "&&": return booleanAnd;
- case "<<": return shiftLeft;
- case ">>": return shiftRight;
- case "<": return less;
- case "<=": return lessEqual;
- case ">": return greater;
- case ">=": return greaterEqual;
- case "==": return equal;
- default: return null;
- }
- }
-}

Powered by Google App Engine
This is Rietveld 408576698