| Index: compiler/java/com/google/dart/compiler/DartCompilerListener.java
|
| diff --git a/compiler/java/com/google/dart/compiler/DartCompilerListener.java b/compiler/java/com/google/dart/compiler/DartCompilerListener.java
|
| index a182a35112998385124ec1a423571c7c2f66e19f..9216c5bced2b2d0120eef610c748b2db5080516c 100644
|
| --- a/compiler/java/com/google/dart/compiler/DartCompilerListener.java
|
| +++ b/compiler/java/com/google/dart/compiler/DartCompilerListener.java
|
| @@ -1,29 +1,53 @@
|
| // Copyright (c) 2011, 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.
|
| -
|
| package com.google.dart.compiler;
|
|
|
| import com.google.dart.compiler.ast.DartUnit;
|
|
|
| /**
|
| - * Abstract class that {@link DartCompiler} consumers can use to monitor
|
| - * compilation progress and report various problems that occur during
|
| - * compilation.
|
| + * Interface that {@link DartCompiler} consumers can use to monitor compilation progress and report
|
| + * various problems that occur during compilation.
|
| */
|
| -public abstract class DartCompilerListener {
|
| -
|
| +public interface DartCompilerListener {
|
| /**
|
| * Called by the compiler when a compilation error has occurred in a Dart file.
|
| - *
|
| + *
|
| * @param event the event information (not <code>null</code>)
|
| */
|
| - public abstract void onError(DartCompilationError event);
|
| + void onError(DartCompilationError event);
|
| +
|
| + /**
|
| + * Called by the compiler before parsing given {@link DartSource}.
|
| + */
|
| + void unitAboutToCompile(DartSource source, boolean diet);
|
|
|
| /**
|
| * Called by the compiler after the resolution and type analyzer phase for each unit.
|
| - *
|
| - * @param unit the DartUnit having just been compiled. (not <code>null</code>)
|
| + *
|
| + * @param unit the {@link DartUnit} having just been compiled (not <code>null</code>)
|
| + */
|
| + void unitCompiled(DartUnit unit);
|
| +
|
| + /**
|
| + * Implementation of {@link DartCompilerListener} which does nothing.
|
| + */
|
| + public static class Empty implements DartCompilerListener {
|
| + @Override
|
| + public void onError(DartCompilationError event) {
|
| + }
|
| +
|
| + @Override
|
| + public void unitAboutToCompile(DartSource source, boolean diet) {
|
| + }
|
| +
|
| + @Override
|
| + public void unitCompiled(DartUnit unit) {
|
| + }
|
| + }
|
| +
|
| + /**
|
| + * Instance of {@link DartCompilerListener} which does nothing.
|
| */
|
| - public abstract void unitCompiled(DartUnit unit);
|
| + public static final DartCompilerListener EMPTY = new Empty();
|
| }
|
|
|