| Index: pkg/compiler/lib/src/kernel/error.dart
|
| diff --git a/pkg/compiler/lib/src/kernel/error.dart b/pkg/compiler/lib/src/kernel/error.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..464112fae7d9b40bf529f1cc5f18568b8a8f9ac2
|
| --- /dev/null
|
| +++ b/pkg/compiler/lib/src/kernel/error.dart
|
| @@ -0,0 +1,139 @@
|
| +// Copyright (c) 2016, 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.md file.
|
| +
|
| +import 'package:kernel/ast.dart' as ir;
|
| +
|
| +import "../dart_types.dart" show DartType;
|
| +import "../elements/elements.dart" show Element, ErroneousElement;
|
| +import "../resolution/operators.dart"
|
| + show AssignmentOperator, BinaryOperator, IncDecOperator, UnaryOperator;
|
| +import "../tree/tree.dart"
|
| + show Expression, NewExpression, Node, NodeList, Operator, Send, SendSet;
|
| +import "../universe/call_structure.dart" show CallStructure;
|
| +import "../universe/selector.dart" show Selector;
|
| +
|
| +abstract class KernelError {
|
| + // TODO(ahe): Get rid of this method, each error should be handled according
|
| + // to the semantics required by the Dart Language Specification.
|
| + ir.Expression handleError(Expression node);
|
| +
|
| + ir.Expression errorInvalidBinary(Send node, ErroneousElement error,
|
| + BinaryOperator operator, Node right, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidCompound(Send node, ErroneousElement error,
|
| + AssignmentOperator operator, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidCompoundIndexSet(Send node, ErroneousElement error,
|
| + Node index, AssignmentOperator operator, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidEquals(
|
| + Send node, ErroneousElement error, Node right, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidGet(Send node, ErroneousElement error, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidIndex(
|
| + Send node, ErroneousElement error, Node index, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidIndexPostfix(Send node, ErroneousElement error,
|
| + Node index, IncDecOperator operator, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidIndexPrefix(Send node, ErroneousElement error,
|
| + Node index, IncDecOperator operator, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidIndexSet(
|
| + Send node, ErroneousElement error, Node index, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidInvoke(Send node, ErroneousElement error,
|
| + NodeList arguments, Selector selector, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidNotEquals(
|
| + Send node, ErroneousElement error, Node right, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidPostfix(
|
| + Send node, ErroneousElement error, IncDecOperator operator, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidPrefix(
|
| + Send node, ErroneousElement error, IncDecOperator operator, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidSet(
|
| + Send node, ErroneousElement error, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidSetIfNull(
|
| + Send node, ErroneousElement error, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidUnary(
|
| + Send node, UnaryOperator operator, ErroneousElement error, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorNonConstantConstructorInvoke(
|
| + NewExpression node,
|
| + Element element,
|
| + DartType type,
|
| + NodeList arguments,
|
| + CallStructure callStructure,
|
| + _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorUndefinedBinaryExpression(
|
| + Send node, Node left, Operator operator, Node right, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorUndefinedUnaryExpression(
|
| + Send node, Operator operator, Node expression, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorUnresolvedFieldInitializer(
|
| + SendSet node, Element element, Node initializer, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorUnresolvedSuperConstructorInvoke(
|
| + Send node, Element element, NodeList arguments, Selector selector, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorUnresolvedThisConstructorInvoke(
|
| + Send node, Element element, NodeList arguments, Selector selector, _) {
|
| + return handleError(node);
|
| + }
|
| +
|
| + ir.Expression errorInvalidIndexSetIfNull(
|
| + SendSet node, ErroneousElement error, Node index, Node rhs, _) {
|
| + return handleError(node);
|
| + }
|
| +}
|
|
|